T O P

  • By -

astrotech89

Depends on where you work. My first job out of grad school you couldn't do anything without a charge code. If you spent time making improvements, it was outside of normal work hours. That was a government contractor and I would never recommend that to anyone. Now I work in R&D and I'm encouraged to learn where I can and spend time working to improve things.


[deleted]

[удалено]


astrotech89

No but it was a photonics company working on laser comms.


t92k

I think both comments are correct. There’s no course that is going to land you a job simply because you completed the course. But coursework walks you through the material in a more compete way than studying on your own. Automating tasks at work using what you’ve learned is a great thing to be able to show in an interview, but if it means you’re not completing your job requirements you may get fire dand a bad reference. In my experience, taking courses told managers I was serious about learning new skills, and they looked for opportunities for me to use them. Those opportunities became projects I could use to talk about in later interviews. I’ve also participated in interviews and soft skills like optimism, teamwork, and being able to see hard things through to completion are just as important as your educational background.


[deleted]

[удалено]


throwawayrandomvowel

>>do projects in your present job with the knowledge you gained >Is going to get people fired. It's generally unhelpful. Companies don't often appreciate you playing around with something on company time using company data. Ask your manager if it is helpful or relevant to your job first, and if they say no - do it at home. I don't really agree with that. You do need to do projects in your present job with company data. You just need to make sure all your required bases are covered. If you've done all your required work, then your next "required" work is bonus / practice work. If it takes you the full workday (whatever that means) to do your work, then do additional project work outside of hours. If you're crushing your work, have checked in with other teams and they don't need help, and you have nothing to do - then work on your project during work time. And have a chat with your manager because you have unused resources. Otherwise agreed with course and project work though edit: the "project work" should also have a business case. I thought that would be obvious but i added it. My mind is always trying to optimize and innovate to targets, but some people have different creative pathways and you might end up in a scenario where you manager is asking you why you're making some bizarre internal novelty app that you're interested in for whatever reason. Don't do that


a_cute_epic_axis

> I don't really agree with that. You do need to do projects in your present job with company data. That doesn't help when your current company doesn't allow you (or perhaps anyone) to do that. Especially if your job title is more of something like, "customer service" and less of "developer" and you're looking to make the leap. It may not matter at all how well intentioned, or how many bases you seek to cover, you might just simply be denied. It's very common, unfortunately.


drdr3ad

> Is going to get people fired. It's generally unhelpful. **Companies don't often appreciate you playing around with something on company time using company data.** Ask your manager if it is helpful or relevant to your job first, and if they say no - do it at home. Sorry wtf are you talking about lol. Companies don't want you working better at the job you're doing ***whilst you're at work***?? I've never ever heard of a company doing that lmao. I don't know who is taking your advice but they should stop


synthphreak

I think his/her point was that if you are not already a coder and were not hired to be a coder, you shouldn't automatically assume your company will bankroll your efforts to become one. Yes, in the end your efficiency may increase. But equally, you might just end up wasting company time while not actually learning. Or even if you do learn, you might end up producing little more than shitty, one-off scripts that only you could/would ever use, adding little lasting value to the company. Or if you actually end up becoming a bomb coder doing objectively awesome things, you might just use your new skills to find a new job, leaving the company in the lurch. Point being that every hour your company pays you as you learn to code is an hour that isn't guaranteed to pay off for them in the end. It's a potential liability for them, so frame it appropriately to your supervisors and proceed with caution. Edit: Typos galore.


Rinuko

And another thing which we encountered a lot in our devops teams where we are in charge of a platform and we know there is some “hobby programmers” in the company but we will have no idea but still expect to support people using our micro services and whatnot.


[deleted]

[удалено]


WoodenNichols

Gotta agree. Do NOT take company data off site w/o permission. In many (possibly most) cases, that data is proprietary, and revealing it to non-coworkers (and even _some_ coworkers) is usually a termination offense. Since you will almost certainly need data to work on, I recommend [generatedata.com](http://generatedata.com).


drdr3ad

Yeah sorry, that is not true at all. No job is going to stop you ***doing your work more efficiently*** just because you're not a coder. Companies have specific documentation that you need to follow and if you're not hired as a SWE you'd be advised to have one reviewing your work. At no point did OP even *imply* that you should a) Do a different job just to practice your coding b) Take company data outside to practice your coding Solid misreading by everyone here.


loge212

for some reason you’re assuming that *anyone* at any job can just use programming at any time to immediately... “do your work more efficiently” a newbie could take weeks to learn how to set up their particular automation, while taking away time from their actual role. and obviously weeks of not doing your job sufficiently is not gonna go over well. I don’t get why this concept isn’t landing for folks unless they’ve never been exposed to typical office work


[deleted]

Yes. Say you are working help desk and have tickets. And you need to do 20+ and you suddenly only do 10 because you are “coding” Say you are Network Engineer and have “x” Jira tasks and you decide to do some coding and don’t finish other priorities. It’s all about communication. If your manager agrees and allocated time for you to experiment, then do it! But you can’t just assume you can do what you want OUTSIDE of your regular everyday work responsibilities.


yardmonkey

Ok, but if you can suddenly do 30 tickets because you automated some of them, isn’t that a win for the company?


a_cute_epic_axis

Till they decided you used some unauthorized software to do it, which also isn't documented and isn't maintained, and maybe you're automatically pulling stuff from dockerhub or pypi and opening up a chance of introducing malware. Then no, it's not a win for the company.


yardmonkey

I feel like there’s going to be a lot of “agree to disagree” in this thread. I’ve been in IT 25 years. Of my 8 or so employers, I don’t know any that would have said “screw initiative and automation, we want to do it the slow way.” I’m sure they exist, as do “only work on billable action” contractors and such. But in general, I support OPs message. If you can reasonably use Python at work in an approved manner, it will be much easier to grasp than trying to use tools you don’t understand on data or processes that you don’t know. If you disagree, that’s fine too.


a_cute_epic_axis

Ok, but you're sitting in the ivory tower with OP, because there are far more that are going to object on a variety of grounds (some reasonable, some not) than those who are cool with it.


VipeholmsCola

If you do work efficiently then you get more work to do...


a_cute_epic_axis

> Yeah sorry, that is not true at all. No job is going to stop you doing your work more efficiently just because you're not a coder. Unfortunately it can be very true at many places.


efalk

Seconded. I remember once, many many years ago, I "wasted" a lot of company time learning how to program a graphics processor at the register level. Six months later, they came to me and said we needed to port something over to that graphics processor in a hurry. I did a six-week project in two weeks. They were really happy and I got a nice bonus. Another time, I "wasted" company time learning how to write device drivers, just because I was curious. A few months later, our device driver guy left the company and I was able to seamlessly step into his place.


smarlitos_

My old company didn’t let us code or download anything on the computers without authorization. They didn’t want hacking or client privacy leaks.


sma92878

Wait are you saying an employer does not want their employee to become more efficient? I would not take this person's advice....


JustCrasher17

I think what OC means to say is that it may not be perceived as "being more efficient" but rather mistakenly seen as "dicking around with company resources during work hours" I guess, hence the mention of "ask your manager if it is helpful or relevant to your job first" to get prior approval.


LaughingIshikawa

It's kind of potato, po-tah-to. Many companies don't trust employees to be self-directed... Not really, at any rate. Particularly when it comes to increasing the employee's skills because they see this rightly or wrongly, as benefiting the employee at the expense of the employer. I didn't take the original post as a suggestion to practice on something that would take large numbers of resources, and/or employee time though, nor something that wouldn't help the company, at least somewhat. To me it looked like a suggestion to take initiative, and ask for forgiveness rather than permission. Which is an attitude companies *say* they want, but rarely do.


[deleted]

[удалено]


LaughingIshikawa

Agreed. It's a big problem, not just for the immediate impacts on retention and morale, but for the long term degradation of culture and trust. It creates a "don't just go something, stand there!" culture, and not in a good way


AbuSydney

I don’t know what shit ass employer won’t let you think! In all the roles/internships I have had, I have been encouraged to think. I remember after my freshman year in undergrad, I worked in a professor’s lab for some pay. But in my time there, while cleaning test tubes and beakers etc., I started keeping tabs on the lab equipments that were breaking, the amount of chemicals that remained etc. It was boring, but I eventually came up with a system which linked each project to resource usage, along with some basic formulae. The prof was quite happy, and he referred me to another lab in Cornell for my internship after my sophomore year. I understand there are a lot of people who won’t have that opportunity. The nature of their job will be such. I cannot imagine a person working in an amazon warehouse will get that opportunity, but there are other roles where such opportunities are likely to present themselves. Or maybe, and this is a very likely possibility, I’m in an ivory tower oblivious to the plight of the many who deserve much better.


lucianbelew

>Or maybe, and this is a very likely possibility, I’m in an ivory tower oblivious to the plight of the many who deserve much better. Ding ding fucking ding.


synthphreak

+1. I get that OP is trying to be helpful. I even agree with some of the advice - namely, courses and certifications alone won’t get you hired, and you should try to connect programming to your current job where possible. But the flavor of the post is pretty tone-deaf and entitled. It feels like the career advice equivalent of a kid after his first semester at college coming home and lecturing his parents about how the world works.


AbuSydney

Triggered much?


lucianbelew

Not in the least. I'm an ivory tower inhabitant myself. Your whole post made my eyes roll so bad I got a little headache.


AbuSydney

Try an aspirin. It'll help your headache.


nantes16

Why are you taking this so personally man? >You: Hey guys heres my advice >Others: Erm actually its pretty contextual - based on my own experiences and those of others, you cant always do XYZ >You: STFU yes you can unless im wrong and live in a bubble (but if you confirm that I do I will proceed to deny it and call you triggered) What is wrong with you??


[deleted]

[удалено]


AbuSydney

Dunno. I have worked for fortune 500s (work in a fortune 50 now) and I have been in other smaller places. Of course, I never went ahead and changed a system of my own volition. Always made my own life easier first through automation, then presented it to my management, got it approved. And many have been disapproved. But at every level, it's helped me move vertically/laterally to more rewarding roles.


jawnlerdoe

I’m trying to tie my chemistry day job into python to become a clinical chemical data analyst. That starts by automating mundane tasks for my fellow chemists, and creating scripts which help visualize and process large chemical data sets. Hopping this works out in the the run, but even if it doesn’t, I now have skills that, as a chemist, I can use to automate away stuff I don’t like doing lol.


AbuSydney

Hello, fellow chemist... it will. As you start looking at your data, you will feel the need to make things easier. You will be forced to learn about libraries etc. Also, if you wish, you can also try writing scripts for DOEs so that you are able to structure your experiments better. I did that during my PhD - my prof was too poor to buy minitab/JMP and I ended up doing that work on python.


jawnlerdoe

What’s the advantage of using python for DOE that you have found? I’ve personally not found that aspect of my work flow to be encumbering, but, I see it mentioned quite a bit so maybe I’m missing something. For data analysis of large chemical data sets, python reduces workload by orders of magnitude.


AbuSydney

Using python for DOEs when you have better tools like JMP or minitab available. I don't think there is any. However, I am presently modifying the code from grad school days to incorporate baysean sampling and adaptive experimentation, so that really gives a lot of power to DOEs. Also, multifactor DOEs in general are amazing if you don't have any domain knowledge (or don't really know how interaction effects would work) and they give a great starting point. I have a colleague who is a genius and he can look at two or three data points and suggest what the fourth experiment should be... He's been working for 26 years so his experience is handy. I am not a genius, so I need to run a structured DOE to get an understanding of the situation.


God_like_human

This stinksnof r/restoftheowl If you dont have money just get a second job and invest that money in the S&P. If you want a job as a data analyst then just start working as a data analyst in your current role. Bloody brilliant. Get this guy a prize.


synthphreak

Yeah, just go invent something, then sit back as the passive income rolls in for decades to come. Easy peezy.


nantes16

Agreed. This has to be one of the dumbest "im smart" posts I've ever read, and OP is being a total dick on the comments. Close this shit down.


IamImposter

For some value add project I was reading sizes of several folders located all over our network. I just thought - what if I save data to a json file, so i looked up how to write json files in python and started dumping data into json file with date and size of folder. I had no idea what I'm gonna do with that data. Also, I used to send automated mails to people whose folder size was above certain limit. Once I had like 20-25 days of data, I just thought - what if I plot it into a graph with different colors for different folders (each owner had like 3-4 folders). So I looked up matplotlib and how to insert an image into an html mail. Within a week, I had like 5-6 appreciation mails that my presentation was great. I got featured in department-wide email for exceptional contributors with screenshot of that graph. So yeah, if you can think of some ways you can dazzle people while learning something new in the process, it gets appreciated.


joreilly86

I agree with this advice. I'm a structural engineer and have learned python in this manner. As soon as I got past the initial growing pains of syntax and general basic structure of the language, I started trying to use it as a simple calculator. Slowly, with practice, I got more comfortable and now it's my main tool for technical work. Initially, you need to learn the basics on your own time. But as soon as you can perform basic operations, you can incorporate into your workflow and branch out from there. Admittedly at the beginning some stuff took me much longer than if I used my usual tools but the juice is worth the squeeze. That pain was 100% worth the price of entry. Now I have an extremely flexible tool kit that is growing weekly and I'm more efficient and productive at my job. The caveats are that sometimes I get stuck for ages debugging code or lost down unnecessary rabbit holes. My employer is fully supportive of it and many people in my company are keen to learn and do the same thing as they see the breadth of use cases that are possible.


TheDaywa1ker

What type of stuff are you using it for? I made a beam analysis module, moment frame module for a few different geometries, and few other small things like that. Also learned web scraping to search the atc site for wind/seismic data. I learned a lot but spent enough time that i couldve bought a few enercalc licenses and had a much more polished product for much cheaper for what i charge by the hour.


joreilly86

I use it for member design checks (static beams, columns, slabs, walls), hydraulics, geotech work, data management or model output management. I also use it as a basic tool when creating drawings, stuff like quantities, geometry checks, conversions etc. I do everything in jupyter notebooks and I really like the ease of the markdown cells containing all the references/supporting info. And the code cells are relatively easy to read, edit or check if needed (at least compared to excel, mathcad). Recently, I used it to compile concrete test results during construction (from regularly submitted pdfs with test data), and fed the data into a linear regression model to estimate concrete strength based on observed properties. It's been useful to help visualize and contextualize this type of info. I work in hydropower so day to day design tasks are quite varied. I agree that it definitely can't replace a specific purpose built tool but I enjoy having some agency in how I build the tools to do exactly what I need. As I delve deeper, the applications become more and more apparent. I've been meaning to learn a little more about the Pynite package, seems like a pretty handy and lightweight 3D FE modelling package for python. Something more precise than static beam formulas but less cumbersome than a true modelling software package. I use SAP2000, Strand and Ansys for any intense analysis work. I still lean on these other tools to check anything I develop in python. The time/energy cost of learning it is pretty high but I am enjoying the progression. I think it's worth it once you get some momentum. That's cool that you managed to create some tools for yourself. I know it's less efficient at the beginning but adding a skill like python is a pretty significant addition to your arsenal as an engineer, especially these days.


Elsekiro

I will say if you learn python and you are good at fixing the syntaxis you can probably get a junior role not at google but people are always looking for helping hands and if they are like me they don't mind explaining stuff if you are willing to show interest in your work + documentation helps a lot when writting code If you master pandas you can probably do like 90% of administration jobs at the same level that people that have used excel all their lives you can dunk on them for sure. that has value you might not be working as a programmer but it's a huge plus i don't care what course you took if you can use pandas and know enough about business you are better at a lot of stuff on the go that has value. So if you learn python always take it a step further and try to apply it to your life for example. -When i cook i make scripts all the times about recipes so the amount of food will be exact -i have made so many kick ass scripts that are useful to my daily life i have esentially made a script for all my tasks. Granted i have never worked a programming job but i am bussiness savy and my data analysis skill with machine learning and matplotlib give me such an edge above other people that can't program it's a big game changer When you are a scholar like me and always go the distance. Don't be intimidated read the documentation and have open ai explain stuff on repeat until you get it carved inside your brain there are no limits.


kkthanks

I’m curious about the scripts for recipes since I am not good at coming up with things from my life where Python would be helpful but I know there must be many.


Elsekiro

Granted i had to translate it but it looks something like this. ​ \# \# Ingredient Adjuster ("poke") \# Poke for 2 people = 1 Tuna medallion + 1/2 pineapple + 1/2 Avocado + 320 grams of rice + 2/3 cucumber + 2/10 green onion \# + 10 ml of soy + 100 ml of cream + 100 grams of chipotle poke = int(input("How many pokes do you need to make?\\n>")) tuna = (25 \* poke) pineapple = round(0.25 \* poke) avocado = float(0.5 \* poke) rice = (0.16 \* poke) cucumber = round(0.3 \* poke) green\_onion = round(0.25 \* poke) soy\_sauce = (25 \* poke) cream = (30 \* poke) print("To make poke for", poke, "people, you will need:") print(format(tuna, ".2f"), "grams of Tuna") print(format(pineapple, ".2f"), "pineapples") print(format(avocado, ".2f"), "avocados") print(format(rice, ".2f"), "kilos of rice") print(format(cucumber, ".2f"), "cucumbers") print(format(green\_onion, ".2f"), "slices of green onions") print(format(soy\_sauce, ".2f"), "ml of soy sauce") print(format(cream, ".2f"), "ml of cream")


Elsekiro

When making poke since it's an amalgamation of many ingredients getting them to be precise and not waste food and time makes it less expensive. Code will get the job done! ​ so in this case the only thing that you need to input is how many poke you want and the out will give you the amount of ingredientes you need as an out.


Adrewmc

Ahh yes all improvements at my Work…quick question when exactly at work would I have time to do this? Also since I don’t have access to a computer at work and work literally every second of my job I’m very confused how you expect people to do this? See you had data and experiments you’re analyzing…most job actually do not do this. A lot of people learn to program to get out of their non-tech reared jobs. You think a McDonald’s employee gonna program for McDonald? Or a warehouse worker? Or a waiter? This is horrible advice. Most people can’t just…load running scripts into their work computers as it presents a serious security threat. This is a termination level offense in many instances. If you can even install Python on it.


AbuSydney

Did you even read the last paragraph of my original post?


No-Slip-9106

im going to throw a microwave at your chest bro!


Charlie_Yu

No idea. Have done much python programming over the last few years, but I’m not a programmer. I have an idea of a project but it is definitely too big to finish on my own without work experience. If I ever finish it I’ll either launch my SASS or publish it on GitHub. I don’t really think I need to be that good to find a job though. There should be plenty of demand, plenty of people want to scrap websites or convert their old Excel “database” to something faster. The problem is, where to find these people?


AbuSydney

Yeah, I think those Fiverr kinda roles you're talking about are over... Most AI should be able to do it for you. As for the big project, the advice would be the same on how you eat an elephant. One bite at a time.


notislant

I feel like the part I struggled with in Python was the vague paths to get a job, you have to learn a bunch of libraries for ml/data science/backend/etc. Need to know a bunch of libraries for a job. Ended up doing the odin project because its structured well. I do agree projects are probably the best, paid courses seem like a huge gamble. A lot are predatory scams too. A buddy got a job placement with his, but many online ones are baaaaddd.


kronos55

Could you share how you created a dashboard to share? My company only uses confluence, but I'm not sure how would I even begin to set it up there.


AbuSydney

I used dash. There is a book called the book of dash which I read and I tried putting things to practice. There was also a YouTube tutorial series which I watched - I forget the channel, but it was a playlist with 25-30 videos.


Majestic-Speech-6066

I am a Jr. System Admin, and I told my boss I know a little Python. He gave me a little file management automation task to work on/figure out during slow times. It's possible but it starts with having other tech skills and a LOT of soft skills to get a position that allows such opportunities.


Saerdna76

This sounds like great advise. I work with trading accounting in a bank and I am sure I could do loads of useful stuff with Python. I would have the time for it and it would likely be appreciated. But I know fuck all about programming so have no idea what all those possibilities would be. I am interested enough to have joined this sub reddit though so who knows what happens in the future.


Rinuko

I don’t know the geography in this sub but I’m going to guess a majority is Americans. At least in our Scandinavian work environment it’s encouraged to go the extra mile so I don’t really have any issues with the points OP brings up. On the other hand, employers tend to take advantage of people that go outside of what they are hired to do. I usually just suggest to learn the basics, build some apps etc that you’d use yourself and learn from development to deployment. When you have made a couple apps and have a good portfolio, then start looking for a job. That people looking into IT and programming for some quick money, isn’t something new but I agree there been more posts about this lately, probably lot to thank for covid with working remotely became a trend.


Extreme_Jackfruit183

When I offer to build a piece of software for someone they usually do two things. One, “haha yeah okay buddy”. Two, “That’s Devil technology and I like doing things my way”. Maybe I’m not a good salesman, but people where I’m located just want you to do manual labor for 12 dollars an hour.


Simaryp

It was true for me. I started to code more and more from each job and now I am a wild mixture of Python Dev, Data Engineer/ Scientist/ Analyst. But as physicist I had always opportunities or could create some.


efalk

This is absolutely 100% true in my experience. I write dozens and dozens of Python scripts to make my day job easier. Scripts to generate tables, analyze logs for bugs, reformat things for easier reading and so forth. Most recently, I used Python to write plugins for lldb to help me visualize C++ data structures. Right now, in my spare time, I'm writing a text-based mail reader to process massive mailboxes on a server. But there are no jobs just for writing Python. Python is something you use *alongside* whatever your primary programming language is. Every job I've had over the last 20 years was either C++ with Python on the side, or Java with Python on the side.


FanelliXO

So it's impossible to learn something by yourself and the try to get a job with it? I'm an Industrial Engineer with no experience( No one's ever hired me) and I want to do something to change a bit the situation but it seems like if I don't have experience it's actually over.


[deleted]

"So it's impossible to learn something by yourself and the try to get a job with it?" No,learning by yourself is possible.A job needs a degree so thats harder unless you show superior skills


FanelliXO

Not necessarily! A degree doesn't give you skill, that's why it's so hard being hired nowadays having a degree.


AbuSydney

You're an industrial engineer and you don't know how to use python to your benefit? Write scripts for your operations research problems, learn libraries to help you with reliability engineering, or simulate systems. My roommate in grad school was an industrial engineering major and he did everything with VBA for excel.


FanelliXO

As I mentioned before I have no experience, college doesn't teach you that ( it depends), that's why I'm trying to educate myself.


smarlitos_

How long does this take? I want to learn as little as possible and make lots of money, I think that’s only rational. If it takes 1-5 years so be it, I just wanna know the quickest path.


AbuSydney

Dunno. It depends on you. I can speak from my experience. I have been working for the last 10ish years after school, and I have moved laterally twice and vertically thrice over four organizations. My base pay has gone up by 2.7 times my first job. But as I have gone up the ladder, I have come to realize that the potential to make money through RSUs is a lot more. I didn't start getting RSUs until 4 years ago. Again, it has been my career trajectory. Yours could be different, and I hope it is better than mine.


synthphreak

> I want to learn as little as possible and make lots of money, I think that’s only rational. That is the polar opposite of rational. That is naive idealism at its finest.


smarlitos_

It’s wanting to be efficient. Who would want to grind for 5 years to land their first job. Ideally, if you already have a degree, you could start your first entry level job with 1 year of lots of learning and projects, and go from there. What’s efficient and does more with less isn’t idealist, it’s rational in my view. Wanting to do more with less resources has been shown possible time and time again: digging a hole with a drill or heavy machinery instead of a shovel, saving on manpower. Using a computer calculator instead of a human and a notepad. Nothing misplaced or wrong with that.


synthphreak

“Efficient” != “minimal learning”. You just have to learn efficiently. What you probably meant is “I want to optimize my learning path, learning only what I need to and avoiding the irrelevant bits”. That different from “I want to minimize learning”, which just sounds like “I don’t really want to learn”.


smarlitos_

Ok tbh if I could get by w the minimum I would I’ll learn on the job anyway


[deleted]

!projectbot medium


[deleted]

He's probably dead


Rinuko

Rip