Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Get a devDuck
Rubber duck debugging has never been so cute! Get your favorite coding language devDuckBuy Now
Search - "experienced devs"
Holy fucking shit. I just went to my first Java class at uni (3 1/2 hour long one at that) and I havent felt so damn irritated in a while.
So first, I only had about an hour of sleep last night and a full day of work before this class so I was more cranky than normal.
Theres only 7 students in the class, 6 others plus me. I am the only one with any resemblence of programming experience. The teacher also claims to be a linux developer.
This is a three part course series. Java 1, 2, and 3. All taught by the same teacher.
-teacher spends 48 minutes talking about text editors. Not even IDEs. Just talking in depth as fuck about notepad (notepad. Not notepad++ )and atom and textpad. Those three only though, nothing on vim or emacs or ACTUAL IDEs. 48 minutes.
-professor saw linux on laptop and asked what distro. When I said arch he said "oh no you shouldnt be using that Its not really for beginners" ... Uhh what makes you think I'm a beginner to linux? Or does he not think I should be using arch while learning java? Either way its really ridiculous and irritates me that he would discourage anyone from using any software/OS/anything, regardless of what it is or skill level.
-teacher moved a bunch of content out of the course because theyre either "concepts that are never implemented anymore" or "arent critical to know to master the language". These particular topics that were removed? Multi-dimensional arrays, scopes, and exception handling. EXCEPTION HANDLING.
-he writes a hello world program and displays it on the board, proof of it working and everything. He tells the class to write the same program, compile and run it. Never did I guess we would spend the remaining hour and ten minutes of class struggling with fucking hello world programs. Especially when the correct code is on the fucking projector.
And I get it guys, everyone starts somewhere. People have to learn from square one. But these kids have no fucking interest in this. One of them literally admitted to pursuing this degree for the "lavish life" that comes with the salary. Others just picked programming because they didnt know what else to choose to get into the school. It fucking saddens me. I hope that one or some of them end up caring and finding a passion in this field, otherwise I feel fucking sorry for them having to spaghetti code their way through life to get a paycheck cause they couldnt be bothered to put in the effort. I feel even more sorry for any devs they work with in the future too.
The other annoying bit is that I can't test out of this class!! so it looks like for either 7 hours a week ill be bored out of my fucking mind with these beginner concepts or ill be helping others fix really stupid shit in their code (like putting quotes around hello world so it would actually print the string).
Fucking hell. Waste of a semester class.48
This is more just a note for younger and less experienced devs out there...
I've been doing this for around 25 years professionally, and about 15 years more generally beyond that. I've seen a lot and done a lot, many things most developers never will: built my own OS (nothing especially amazing, but still), created my own language and compiler for it, created multiple web frameworks and UI toolkits from scratch before those things were common like they are today. I've had eleven technical books published, along with some articles. I've done interviews and speaking engagements at various user groups, meetups and conferences. I've taught classes on programming. On the job, I'm the guy that others often come to when they have a difficult problem they are having trouble solving because I seem to them to usually have the answer, or at least a gut feel that gets them on the right track. To be blunt, I've probably forgotten more about CS than a lot of devs will ever know and it's all just a natural consequence of doing this for so long.
I don't say any of this to try and impress anyone, I really don't... I say it only so that there's some weight behind what I say next:
Almost every day I feel like I'm not good enough. Sometimes, I face a challenge that feels like it might be the one that finally breaks me. I often feel like I don't have a clue what to do next. My head bangs against the wall as much as anyone and I do my fair share of yelling and screaming out of frustration. I beat myself up for every little mistake, and I make plenty.
Imposter syndrome is very real and it never truly goes away no matter what successes you've had and you have to fight the urge to feel shame when things aren't going well because you're not alone in those feelings and they can destroy even the best of us. I suppose the Torvald's and Carmack's of the world possibly don't experience it, but us mere mortals do and we probably always will - at least, I'm still waiting for it to go away!
Remember that what we do is intrinsically hard. What we do is something not everyone can do, contrary to all the "anyone can code" things people do. In some ways, it's unnatural even! Therefore, we shouldn't expect to not face tough days, and being human, the stress of those days gets to us all and causes us to doubt ourselves in a very insidious way.
But, it's okay. You're not alone. Hang in there and go easy on yourself! You'll only ever truly fail if you give up.44
Tech Industry: “We need more developers!”
NewDev: “Hire me”
Tech Industry: “only experienced developers please! We don’t have time to train juniors ”
Older Dev: “Hire me”
Tech Industry: “no, you want too much money and too much time off“
Mid dev: “Hire me”
Tech Industry: “only experienced devs who are a culture fit!”
Robot dev: “Hire me”
Tech Industry: “You are Hired”12
Wow... this is the perfect week for this topic.
Thursday, is the most fucked off I’ve ever been at work.
I’ll preface this story by saying that I won’t name names in the public domain to avoid anyone having something to use against me in court. But, I’m all for the freedom of information so please DM if you want to know who I’m talking about.
Yesterday I handed in my resignation, to the company that looked after me for my first 5 years out of university.
Thursday was my breaking point but to understand why I resigned you need a little back story.
I’m a developer for a corporate in a team of 10 or so.
The company that I work for is systemically incompetent and have shown me this without fail over the last 6 months.
For the last year we’ve had a brilliant contracted, AWS Certified developer who writes clean as hell hybrid mobile apps in Ion3, node, couch and a tonne of other up to the minute technologies. Shout out to Morpheus you legend, I know you’re here.
At its core my job as a developer is to develop and get a product into the end users hands.
Morpheus was taking some shit, and coming back to his desk angry as fuck over the last few months... as one of the more experienced devs and someone who gives a fuck I asked him what was up.
He told me, company want their mobile app that he’s developed on internal infrastructure... and that that wasn’t going to work.
Que a week of me validating his opinion, looking through his work and bringing myself up to speed.
I came to the conclusion that he’d done exactly what he was asked to, brilliant Work, clean code, great consideration to performance and UX in his design. He did really well. Crucially, the infrastructure proposed was self-contradicting, it wouldn’t work and if they tried to fudge it in it would barely fucking run.
So I told everyone I had the same opinion as him.
4 months of fucking arguing with internal PMs, managers and the project team go by... me and morpheus are told we’re not on the project.
The breaking point for me came last Wednesday, given no knowledge of the tech, some project fannies said Morpheus should be removed and his contract terminated.
I was up in fucking arms. He’d done everything really well, to see a fellow developer take shit for doing his job better than anyone else in [company] could was soul destroying.
That was the straw on the camels back. We don’t come to work to take shit for doing a good job. We don’t allow our superiors to give people shit in our team when they’re doing nothing but a good job. And you know what: the opinion of the person that knows what they’re talking about is worth 10 times that of the fools who don’t.
My manager told me to hold off, the person supposed to be supporting us told me to stand down. I told him I was going to get the app to the business lead because he fucking loves it and can tell us if there’s anything to change whilst architecture sorts out their outdated fucking ideas.
Stand down James. Do nothing. Don’t do your job. Don’t back Morpheus with his skills and abilities well beyond any of ours. Do nothing.
That was the deciding point for me, I said if Morpheus goes... I go... but then they continued their nonsense, so I’m going anyway.
I made the decision Thursday, and Friday had recruiters chomping at the bit to put the proper “senior” back in my title, and pay me what I’m worth.
The other issues that caused me to see this company in it’s true form:
- I raised a key security issue, documented it, and passed it over to the security team.
- they understood, and told the business users “we cannot use ArcGIS’ mobile apps, they don’t even pretend to be secure”
- the business users are still using the apps going into the GDPR because they don’t understand the ramifications of the decisions they’re making.
I noticed recently that [company] is completely unable to finish a project to time or budget... and that it’s always the developers put to blame.
I also noticed that middle management is in a constant state of flux with reorganisations because in truth the upper managers know they need to sack them.
For me though, it was that developers in [company], the people that know what they’re talking about; are never listened to.
Fuck being resigned to doing a shit job.
Fuck this company. On to one that can do it right.
Morpheus you beautiful bastard I know you’ll be off soon too but I also feel I’ve made a friend for life. “Private cloud” my arse.
Since making the decision Thursday I feel a lot more free, I have open job offers at places that do this well. I have a position of power in the company to demand what I need and get it. And I have the CEO and CTO’s ears perking up because their department is absolutely shocking.
Freedom is a wonderful feeling.13
Not having finished any education, and writing code during interviews.
I have a pretty nice resume with good references, and I think I'm a reasonably good & experienced dev.
But I'm absolutely unable to write code on paper, and really wonder how some devs can just write out algorithms using a pen and reason about it, without trying/failing/playing/fixing in an IDE.
Education I think.
I can transform the theory on a complex Wikipedia page about math/algorithm into code, I can translate a Haskell library into idiomatic python... but what I haven't done is write out sorting functions or fibonacci generators a million times during Java class.
I don't see the point either... but I still feel utterly worthless during an interview if they ask "So you haven't even finished highschool? Can you at least solve this prime number problem using a marker on this whiteboard? Could you explain in words which sorting algorithm is faster and why?"
"Uh... let me fetch a laptop with an IDE, stackoverflow and Wikipedia?"26
When your "senior software architect" comes over to where the rest of the team is working to tell the level 1 developer, "I saw your review and it was so wrong that I didn't even bother leaving a comment." There are no words. Way to help teach, encourage, and bring up the younger, less experienced devs.12
Computer Science is a mysterious world of three kinds of devs, irrespective of what background/profile/language they had/worked in.
The ones at the top, who keep doing crazy shit in big companies or open-source and keep adding material to the unstoppable code flowing. These constitute 5% of the dev community.
The remaining 15% in the middle are the "experienced" fellows who keep building shit to get to the top 5%. They work on enterprise/commercial software until the next upgrade and while the wallets keep getting fatter, they don't actually contribute to the community.
This is the part where I want people to understand the power of a dev.
What sets apart programmers/devs from other engineers:
while everyone else is busy solving the current issues/requirements of the world, we devs are the ones who 'build'.
With a right motive, a developer can solve in-numerous problems of the society, be it education, poverty or unemployment.
An experiment by Lee to put data on the web created a world of unforeseeable opportunities.
Hope to see more of Musks and less of Zuckerbergs in the future.9
Me (experienced java dev) in an interview..
C: „what’s the difference between equals and equals equals and equals equals equals in js?“
Me: *i explained it perfectly*
C: „what’s the difference in Java between equals and equals equals and dot equals?“?
Me: „sorry, I don’t know. I’ve never ever seen .=„..
About 15 min after the interview, I was like: „holy moly fucking shit, please shoot me.. he meant .equals.. not .=....
For the devs: I‘M FUCKING STUPID!!!!
For the beginners: THATS the importance of „context“!4
About 2 years ago, our management decided to "try outsourcing". I was in charge for coordinating dev tasks and ensuring code quality. So management came up with 3 potential candidates in India and I had to assess them based on Skype calls and little test tasks. Their CVs looked great and have been full of "I'm a fancy experienced senior developer." ....After first 2 calls I already dismissed two candidates because they had obviously zero experience and the CV must have been fake. ..After talking to the third candidate, I again got sceptical. The management, however, started to think that I'm just an ass trying to protect my own position against outside devs. They forced me to give him a chance by testing him with a small dev task. The task included the following statement
"Search on the filesystem recursively, for folders named 'container'. For example '/some_root_folder/path_segments/container' " The term 'container' was additionally highlighted in red!
We also gave him access to a git repo to do at least daily push. My intention was to look at his progressions, not only the result.
I tried the task on my own and it took me two days, just to have a baseline for comparison. I, however, told him to take as much time as he needs. (We wanted to be fair and also payed him.)
..... 3 weeks went by. 3 weeks full of excuses why he isn't able to use git. All my attempts to help him, just made clear that he has never seen or heard of git before. ...... He sent me his code once a week as zip per email -.- ..... I ignored those mails because I made already my decision not wanting to waste my time. I mean come on?! Is this a joke? But since management wanted me to give him a chance .... I kept waiting for his "final" code version.
In week 5, he finally told me that it's finished and all requirements have been met. So I tried to run his code without looking at it ..... and suprise ... It immediately crashed.
Then I started to look through the code .... and I was ..... mind-blown. But not in a good way. .....
The following is what I remember most:
Do you remember the requirement from above? .... His code implementing it looked something like this:
Go through all folders in root path and return folders where folderName == "/some_root_folder/path_segments/container".
Alone this little peace of code was on sooooooo many levels wrong!!!!! Let me name a few.
- It's just sooooo wrong :(
- He literally compared the folderName with the string "/some_root_folder/path_segments/container"...... Wtf?!?
- He did not understand the requirement at all.
- He implemented something without thinking a microsecond about it.
- No recursive traversal
- It was Java. And he used == instead of equals().
- He compares a folderName with a whole path?!? Wtf.
- How the hell did he made this code return actual results on his computer?!?
Ok ...now it was time to confront management with my findings and give feedback to the developer. ..... They believed me but asked me to keep it civilized and give him constructive feedback. ...... So I skyped him and told him that this code doesn't meet the requirements. ......... He instantly defended himself . He told me that I he did 'exactly what was written in the requirements document" and that there is nothing wrong. .......He had no understanding at all that the code also needs to have an actual business purpose.
After that he tried to sell us a few more weeks of development work to implement our "new changed requirements" ......
Footnote: I know a lot of great Indian Devs. ..... But this is definitely not one of them. -.-
Management wants to outsource to India and gets scammed.9
“I Pay $900 A Month for student loans.”
Not sure why there’s a video about this but let’s watch it...
*Sad music is playing*
“My name is _____ and I pay $900 a month for student loans..”
Yeah so what?
*Sad music continues*
*Woman makes a call and asks about when they’re going to make a student loan reform aggressively*
Then I realized my family was eligible for low income and I received Cal and Pell grants to pay for my tuition and living.
Then I realized that the salary for my computer science degree has numbed me to a point where $900 a month doesn’t seem too bad. Or awful. I mean I just leased a new car for my mom! And didn’t hesitate (only when having fun negotiating though).
Back then, I would be shocked. But it’s a surreal feeling to see now that I don’t. I was literally confused at the basis of this video. And now I’m surprised at my disconnect from it.
I also realized that they make videos based on how society should react to it. Am I an outcast to society because of this? Why am I not reacting the same way?
Maybe society (nowadays) would disdain me because I’ve come into high income like we all will because of our passion (and the demand for it).
But fuck society. It’s full of the very same people who use technology each and every day. Protesting for things they found trending on Twitter. The ones who refused to learn even though it’s a huge part of their lives. They’re the ones holding us back for an Engel’s Technological Utopia (idk if I’m even correct about the philosopher but anyways..)
We’re above them. We make things they’ll use and in massive numbers.
Don’t let them dictate what you should like. How you should act. Whether or not you should feel lonely while they’re posting pictures of fun times on Facebook.
We should be the ones doing that. Because we are the ones doing that.
That’s why we’re given the best to perform what we love most.
So devs, continue what you’re doing. Small or big, you’re still driving the world forward. Opening pull requests and contributing to open source projects. Answering questions on Stack Overflow not only for the person intended but for the beginner or even experienced professional who may stumble upon it later in a Google search.
And be highly rewarded for it. How society feels doesn’t matter any more when it comes to your passion. You’re important. Your work helps others in ways you can’t even imagine. We’re like one big fucking hivemind of engineers with the accessibility of the internet.
I love drinking on a Sunday!9
I was just a junior developer, and the senior interviewer had just left for a quick break.
And, I had to interview one dude for the post of Web Designer (we were not asking for experienced devs). And, then he comes up, opens his laptop, goes to a folder and opens an html file that turns out nothing but a "Save Page as.." of one News Website. Seriously, I just said nothing, asked him a bunch of questions and off he goes. I could not stop laughing later.3
My biggest dev ambition is to get onto a team of experienced devs so I can continue to grow my skillset. I have plateaued and realize their is only so much one can do on their own without a true mentor. Oh and find company that will pay me a decent salary, at least industry average.4
> Worst work culture you've experienced?
It's a tie between my first to employers.
First: A career's dead end.
Bosses hardly ever said the truth, suger-coated everything and told you just about anything to get what they wanted. E.g. a coworker of mine was sent on a business trip to another company. They had told him this is his big chance! He'd attend a project kick-off meeting, maybe become its lead permanently. When he got there, the other company was like "So you're the temporary first-level supporter? Great! Here's your headset".
And well, devs were worth nothing anyway. For every dev there were 2-3 "consultants" that wrote detailed specifications, including SQL statements and pseudocode. The dev's job was just to translate that to working code. Except for the two highest senior devs, who had perfect job security. They had cooked up a custom Ant-based build system, had forked several high-profile Java projects (e.g. Hibernate) and their code was purposely cryptic and convoluted.
You had no chance to make changes to their projects without involuntarily breaking half of it. And then you'd have to beg for a bit of their time. And doing something they didn't like? Forget it. After I suggested to introduce automated testing I was treated like a heretic. Well of course, that would have threatened their job security. Even managers had no power against them. If these two would quit half a dozen projects would simply be dead.
And finally, the pecking order. Juniors, like me back then, didn't get taught shit. We were just there for the work the seniors didn't want to do. When one of the senior devs had implemented a patch on the master branch, it was the junior's job to apply it to the other branches.
Second: A massive sweatshop, almost like a real-life caricature.
It was a big corporation. Managers acted like kings, always taking the best for themselves while leaving crumbs for the plebs (=devs, operators, etc). They had the spacious single offices, we had the open plan (so awesome for communication and teamwork! synergy effects!). When they got bored, they left meetings just like that. We... well don't even think about being late.
And of course most managers followed the "kiss up, kick down" principle. Boy, was I getting kicked because I dared to question a decision of my boss. He made my life so hard I got sick for a month, being close to burnout. The best part? I gave notice a month later, and _he_still_was_surprised_!
Plebs weren't allowed anything below perfection, bosses on the other hand... so, I got yelled at by some manager. Twice. For essentially nothing, things just bruised his fragile ego. My bosses response? "Oh he's just human". No, the plebs was expected to obey the powers that be. Something you didn't like? That just means your attitude needs adjustment. Like with the open plan offices: I criticized the noise and distraction. Well that's just my _opinion_, right? Anyone else is happily enjoying it! Why can't I just be like the others? And most people really had given up, working like on a production line.
The company itself, while big, was a big ball of small, isolated groups, sticking together by office politics. In your software you'd need to call a service made by a different team, sooner or later. Not documented, noone was ever willing to help. To actually get help, you needed to get your boss to talk to their boss. Then you'd have a chance at all.
Oh, and the red tape. Say you needed a simple cable. You know, like those for $2 on Amazon. You'd open a support ticket and a week later everyone involved had signed it off. Probably. Like your boss, the support's boss, the internal IT services' boss, and maybe some other poor sap who felt important. Or maybe not, because the justification for needing that cable wasn't specific enough. I mean, just imagine the potential damage if our employees owned a cable they shouldn't!
You know, after these two employers I actually needed therapy. Looking back now, hooooly shit... that's why I can't repeat often enough that we devs put up with way too much bullshit.3
Like I mentioned in a previous rant, I’m (or was) a coca-cola addict. Coca-cola has caffeine, right?
This happened a tuesday. I forgot my mug at home (I wanted to draw it a bat🦇) so I bought a jumbo coffee at a store near my office. I drank it, and then, all my partners went to the kitchen for coffee. I went with them and I refilled my cup.
I was working on my code, and suddenly I felt a strange sensation on my chest (I don’t think I could describe it, it feels like when you have intestinal problems and gases, but in the chest). I didn’t give it importance. One hour later I started trembling. I googled my symptoms and I found I had a coffee overdose 😱 But how? I drank a lot of caffeine in soda, but this only happened to me with coffee. This lasted 5 hours 😓
You, specially the most experienced devs and coffee addicts, how can I drink more than 1 cup of coffe per day without trembling? Btw, I have no heart or pressure problems, so I don’t know... this happened because I don’t drink much coffee?23
Sales guy: Hey, you're technical. Can you tell me how I'd go about doing (foobar) in this webapp I have here?
Almond: Err... I've never dealt with that webapp in my life. I wouldn't have a clue.
Sales guy: ...but you're a dev right? Oh well, never mind. Anyone more experienced around here that may know?
Almond: No idea, but I seriously doubt any of the devs will have used it. Maybe one of the other sales guys will?
Sales guy: So you're telling me *none* of the devs around here will know how to do this?!
Almond: Very unlikely (thinking why the hell would any devs be using a sales app, but whatever)
...15 minutes later...
Sales guy: Ahah, I figured it out! (Explains what buttons he had to click in crappy app to do foobar)
Almond: Glad you got it sorted!
Sales guy: I'm really surprised none of you devs could figure this out, but I could. Perhaps I should change careers and be a dev.
Read the following in Morgan Freeman’s voice.
Okay everyone sit on down and get ready for story time. There once was a workspace that was a pain in the ass to setup. It often would take an entire day even for the most experienced devs on the team...for it was a workspace perched atop a swamp of shit that would require a whole year to refactor into something that isn’t shit.
It was inherited, passed down, stepped in and scrapped from the boot soles of every programmer that ever touched it. It was an amalgam of old, new, and third party components with a class path a mile long and no package management because the company although physically in the present, somehow maintained a temporal presence in the past. And there was nothing that the team hated more than setting that workspace. In short it was an unholy mess that made Satan cry and Dennis Ritchie spin in his grave so much that the state of California attached magnets and a coil to his body and casket to generate electricity.
Then one day the untalented clowns known as App Group decided that our IDE should be owned and configured strictly through them. They took poor Eclipse and mounted so much silly shit to it that it resembled a riding lawn mower with a fax machine and a blender duct taped to it. Eventually as everything the company touched did, it simply turned into a broken, shitty mess that not even Jesus Titty Fucking Christ could bring back the dead.
And then, every month or so the IDE would break in such a grand way that every developer had to rebuild their workspace...the very same Lovecraftian monster disguised as a code base. It was just too much to bear for old Deus. He was all out of fucks and there wasn’t enough alcohol in the world to quiet his injured soul. So he stood on a chair, carved his name in a rafter and tied a noose to it, put it around his neck and finally kicked the chair out from under himself. I am told he even pooped his pants and the post mortem shit in the seat of his pants was still better than the codebase at work. I’m Morgan Freeman.
Worst thing you've seen another dev do? Here is another.
Early into our eCommerce venture, we experienced the normal growing pains.
Part of the learning process was realizing in web development, you should only access data resources on an as-needed basis.
One business object on it's creation would populate db lookups, initialize business rule engines (calling the db), etc.
Initially, this design was fine, no one noticed anything until business started to grow and started to cause problems in other systems (classic scaling problems)
VP wanted a review of the code and recommendations before throwing hardware at the problem (which they already started to do).
Over a month, I started making some aggressive changes by streamlining SQL, moving initialization, and refactoring like a mad man.
Over all page loads were not really affected, but the back-end resources were almost back to pre-eCommerce levels.
The main web developer at the time was not amused and fought my changes as much as she could.
Couple months later the CEO was speaking to everyone about his experience at a trade show when another CEO was complementing him on the changes to our web site.
The site was must faster, pages loaded without any glitches, checkout actually worked the first time, etc.
CEO wanted to thank everyone involved etc..and so on.
About a week later the VP handed out 'Thank You' certificates for the entire web team (only 4 at the time, I was on another team). I was noticeably excluded (not that I cared about a stupid piece of paper, but they also got a pizza lunch...I was much more pissed about that). My boss went to find out what was going on.
MyBoss: "Well, turned out 'Sally' did make all the web site performance improvements."
Me: "Where have you been the past 3 months? 'Sally' is the one who fought all my improvements. All my improvements are still in the production code."
MyBoss: "I'm just the messenger. What would you like me to do? I can buy you a pizza if you want. The team already reviewed the code and they are the ones who gave her the credit."
Me: "That's crap. My comments are all over that code base. I put my initials, date, what I did, why, and what was improved. I put the actual performance improvement numbers in the code!"
MyBoss: "Yea? Weird. That is what 'Tom' said why 'Sally' was put in for a promotion. For her due diligence for documenting the improvements."
Me:"What!? No. Look...lets look at the code"
Open up the file...there it was...*her* initials...the date, what changed, performance improvement numbers, etc.
I opened version control and saw that she made one change, the day *after* the CEO thanked everyone and replaced my initials with hers.
She knew the other devs would only look at the current code to see who made the improvements (not bother to look at the code-differences)
MyBoss: "Wow...that's dirty. Best to move on and forget about it. Let them have their little party. Let us grown ups keeping doing the important things."8
when you see devs with age <= 16 who look experienced than you and you say to yourself
"Where the fuck have I spent my early life"3
Just about to make a presentation for a group of highly experienced devs... i got my masters degree 8 months ago, so im a rookie in comparison... wish me luck!11
I think the topic of this week is very important.
Older, experienced devs are giving their skills and advices to the younger one.
Some of you maybe know it, I'm a young developer, who started his apprenticeship at september.
I'm feeling good there, the others are friendly. I learn a Lot there. I had experience before I started there. It's my Hobby to code so I started coding when I was 14.
You can't know anything, everyone makes mistakes, this is what I've learned and this is important to remember.
There are these days like today, when your Boss isn't there and you have to work alone. You have to do many things, and you are desperated because nothing Works, you can't ask anyone, you are completly alone. There are these days, when nothing seems to work. But there are also these days when everything Just Works fine and you are happy with yourself.
This is important to remember.
For me its very hard. Days like today are driving me crazy and I'm very sad, even when I know, that this is Kind of normal not to know everything and have Problems, especially when you are young as me and started your first apprenticeship 3 months ago.
Tomorrow I'm also alone, I'm a Little Bit feared of tomorrow (you say that in that Way? :P) When I think of tomorrow and that I don't know How to proceed and sitting there, I'm getting frustrated and Kind of sad. But I know that this will Make you even better some day, because you learn and gets better - day for day.
At least there was something good today. My stickers finally arrived! To Germany! That was fast! Thanks everyone, Thanks! And Thank you @dfox for building this great community!
What are you advices? And how you handle these situations? I hope tomorrow everything Works fine :/2
I have a feature suggestion for devrant: some kind of polling system.
This idea came into my mind with the survey a few days ago.
Since almost all of us are devs, aspiring or experienced, we can expect (somewhat) professional opinions, e.g. on how to tackle a specific problem.
Maybe it's even possible to make this a paid service somehow. I thought about this:
Open a poll for all registered users: $0
Add requirements for a user to have to be able to vote on the poll: +0.99$ each:
- has ranted at least X times
- has at least X ++s
- has a StackOverflow account connected
This way, the OP can narrow down the target audience to a specific group.
Maybe...? I don't know if something like this already exists somewhere else.3
So about 3 weeks ago I was laid off from my dream job due to corporate bullshit. From the feedback received since then it is clear that the company made a mistake hiring a brand new React dev while they really needed an experienced one. Because the consultants who were supposed to be weren't. And the other in-house front end dev was an elitist asshole. And I never received proper feedback until it was too late. Actually I still don't have proper feedback save for some vague stuff which really sounds like the kind of feedback you'd give someone in the middle of their learning process. They even said eventually given more time I could have made it. But alas they felt they had to make a call in the best interest of the company.
Things moved fast since then, I took a week to recover and then I spent time updating my resume before getting back in touch with the recruiter who got me my last job. Great guy and he was happy to help me again. Applied to some positions, got some replies, first in person interview I go to they are immediately willing to take me on.
So now I'm supposed to start tomorrow but somehow I'm having my doubts. The company isn't an IT company but rather a fashion company. They believe in developing in house tools because past attempts with external companies resulted in them trying to push their vision through. Knowing who they worked with I agree, they tried to oversell all the time. But after talking with their developers I noticed they are behind on their knowledge. But so am I. So there was no tech interview which means I am getting an easy way in. And if they honour their word I'll be signing tomorrow for around my old wages.
So you'd think that sounds good right? And yet I'm worried it's going to be another shit show working on software without proper analysis or best practices. I mean the devs aren't total idiots, they are mediors like me and I think their heart is in the right place. They want to develop a good project but it will be just us 3 making a modern .net wpf application with the same functionality of the old Access based system currently in use. I was urged by the boss to draw on my experience and I think he wants me to help teach them too. But I'm painfully aware for my decade since graduating I'm a less than average .net dev who struggles with theory and never worked a job where I had someone more experienced to teach me. I coasted most of the time in underpaid jobs due to various reasons. But I'd always get mad over shitty code and practices. Which I realize is hypocritical for someone who couldn't explain what a singleton class is or who still fails at separation of concerns.
So yeah my question for the hivemind is what advice would you give a dev like me? I honestly dislike how poor I perform but it often feels like an insurmountable climb, and being over 30 makes it even more depressing. On the other hand I know I should feel blessed to find a workplace who seems to genuinely believe that people grow and develop and wishes to support me in this. Part of me thinks I should just go in, relax, but also learn till I'm there where I want to be and see if these people are open to improving with me. But part of me also feels I'm rushing into this, picking the first best offer, and it sure feels like a step backwards somehow. And that then makes me feel like an ugly ungrateful person who deserves her bad luck because she expects of others what she can't even do herself :(4
There has been a post today about the existence of too many js frameworks. Which reminds me of this awesome post https://hackernoon.com/how-it-feels...
At first I thought someone was corpseposting, as it is my understanding that the js ecosystem is calming down a bit. But then I noticed that post got almost 20 upvotes. So here's my thoughts:
(I'm not sure what I'm ranting about here, as it feels kinda broad after writing it. I think it's kinda valid anyhow.)
I'm ok with someone expressing frustration with js. But complaining about progress is definitely off to me.
How is too many frameworks a bad thing?
How does the variety and creation of more modern frameworks affect negatively developers?
Does it make it hard to understand each of these new frameworks?
Well, there's no need to. Just because it has a logo and some nice badges and says it will make you happy doesn't mean you should use it.
You just stick to the big boys in the ecosystem and you'll be fine for a while.
Does it make you feel compelled to migrate the stack of every project you did?
Well, don't. If you don't like being on the bleeding edge of js, then just stick to whatever you're using, as long as it's good code.
But if a lot of companies decided to migrate to react (among others frameworks), it's because they like the upsides: the code is faster to write, easier to test and more performant.
In general, I'm more understanding/empathic with beginner js programmers.
But I have for real heard experienced devs in real life complain about having to learn new frameworks, like they hate it.
"I just want to learn a single framework and just master it throughout my life" and I think they're lowering the bar.
There's people that for real expect occupying positions for life, make money, but never learn a new framework.
We hold other practitioners to high standards (like pilots or doctors), but for some reason, some programmers feel like they're ok with what they know for life.
As if they couldn't translate all they learned with one framework to another.
Meanwhile our lives are becoming more and more intertwined with technology and demand some pretty high standards. Standards that historically have not been met, according to thousands of people screaming to their devices screens.
Even though I think the "js can be frustrating" sentiment is valid, the statement 'too many js frameworks is bad' is not.
I think a statement like 'js frameworks can go obsolete very quickly' is more appropriate.
By saying too many js frameworks is a bad thing you're
1) Making a conspiracy theory as if js devs were working in tandem to make the ecosystem hard,
But people do whatever they want. Some create packages, others star/clone/use them.
2) Making a taboo out of a normal itch, creating.
"hey you're a libdev? just stop, ok? stop"
"Are you a creative person? Do you know a way to solve a problem in an easier way than some famous package? it doesn't matter, don't you dare creating a new package."
I'm not gonna say the js world is perfect. The js world is frantic, savage, evolves aggressively.
You could say that it (accidentally) gives the middle finger to end users, but you could also say that it just sets the bar higher.
I liked writing jquery code in the past, but at the same time I didn't like adding features/fixing bugs on it. It was painful.
So I'm fine with a better framework coming along after a few years and stealing their userbase, as it happens almost universally in the programming world, the difference with js is that the cycle is faster.
Even jquery's creator embraced React.
This post explains also
I have never understood why there is so much animosity from seasoned devs in the community.
I see it in a lot of places. Stackoverflow, reddit, even devRant. In so many cases, an inexperienced dev will post to the web, only to be shot down by things like "this question is stupid" or "you all have it too easy and its apparent you never learned basic CS principles" or things of that nature. In a lot of cases, these are generally unhelpful replies and often teach new devs to be wary of seeking help.
Please help me to understand, why this is.
Is it because the community is angry at these devs trying to get a high paying job by going to a bootcamp and shortcutting the hard work it takes to understand core CS principles to become a decent developer? Then why not take a moment to provide resources or insight to these folks so they can learn to be better?
Is it because the community feels that devs from bootcamps are just watering down the pool of talent making our worth decrease? I feel this isnt really valid because seasoned, experienced architects will always be needed to build good software. And at that, why are we not ensuring that the next wave of developers is equipped to handle tasks like that?
There are a lot of good people in this community who want to help and make the net a better place for all developers (after all, many of us consider it home), but there's a lot more people out there with really shitty attitudes, and it frustrates the hell out of me that my juniors now equate arrogant, self-entitled responses and attitudes with "seasoned devs" and discourages them from even bothering to get involved in the community.25
Observation rather than a rant.
Some of the best, most experienced devs I've ever had the pleasure of meeting and working with have invariably all been the most humble and least opinionated. Mention (x language that might commonly draw disdain) and you don't hear boos and hisses and jokes being thrown around, you hear considered, succinct observations about how, if they were to work with this language, there'd be various coding styles and rules that they'd suggest working to in order to avoid some common pitfalls and frustrations.
Mention a language or framework that they know little about, or heck, they know quite a *lot* about but in which they wouldn't consider themselves an expert, and they're the first to suggest drafting in help. They're more than happy to listen to bring themselves up to speed, even if that "outside help" comes from someone considerably younger and less experienced than them.
This has particularly come to mind as of late as I've found myself working with both ends of the spectrum, but it's been my experience for many years now. Have many others had the same experience?2
One of our projects migrated their file-repository to another one during a major release.
Instead of giving this task to an experienced programmer, they gave it to the head of the respective dev department due to the usual release panic.
Soo.... He wrote the migration tool. It was executed during the release. Everything seemed fine so far.
A few days later. Someone from the above project came to my team due to some "strange behaviour on the production database".
They reported that they couldn't download some of the user's documents due to unknown reasons.
After quickly analyzing the current state of the new file-repository, we concluded that the affected documents did not exist in the new repository.
Then we took a look at the so called migration tool...
Well.. After nearly 30 min. we knew the root cause for that.
They only migrated the first 4 levels of the folder structure. Due to the assumption that "we don't use deeper nesting". (Facepalm)
As the head of their department wrote it, no one seems to questioned it either. Nor did they made a code review and ended up with a tool with hard coded urls to the production db, no version control, no build tool, no ci, nothing. Breaking nearly every possible company standard.
However.. That's not it. When analyzing their migration tool we noticed another even more dangerous thing.
They mixed up the id generation of the migrated documents resulting in a random assignment between customers and documents. Which is quite bad as this contains sensitive information. E.g. passports
They offered us quite a nice amount of money to fix this until EOB. We declinded as it was simply not possible in that time, but agreed to support them with the new tool.
After some time I heard that they migrated production again. And they fucked it up again. They never talked to us after we offered them support...
The third and final migration was written by us. Not only migrated it correctly. It was also way faster. By factor 20.
In the end we haven't gained anything from this rushed project as the penalties were piling up due to this fucked up migration.
After all this time I'm not sure who is to blame. In my opinion, partly all of them.
Head of department who can't and shouldn't code.
Seniors who didn't review the code and didn't ask for help.
Release mgmt who put way too much pressure on the devs.
Along with weekly rant topics, devRant should have weekly polls where you create a poll on opinionated questions like "bash or zsh?". Devs would upvote one & post a rant why they prefer one over the other.
With lots of devs here, the opinions of experienced devs would really help young buds. @dfox4
Companies try to find young devs, less experienced but more openminded and flexible.. do you think we will still find some cool sobs when we're > 40 || > 50 years old, even if we keep up with new technologies and stuff?
Never thought about it until now..3
Is it me or you also feel guilty for handing over the shitty code that does the job and try to make it better before handing over?
Just an observation.
According to Stackoverflow's survey, it suggests that developers with more experience are less competitive. I still can't understand this. How can developers loose their interest over time?18
Node: The most passive aggressive language I've had the displeasure of programming in.
Reference an undefined variable in a module? Prepare to waste your time hunting for it, because the runtime won't tell you about it until you reference a property or method on the quietly undefined module object.
Think you know how promises work? As a hiring manager, I've found that less than 5% of otherwise well-experienced devs are out of the Dunning Kruger danger zone.
Async causes edge cases and extra dev effort that add to the effort required to make a quality product.
Got a bug in one of your modules? Prepare yourself for some downtime because a single misplaced parentheses can take out the entire Node process, killing unrelated pages and even static file hosting.
All this makes for a programming experience that demands much higher cognitive load, creates more categories of bugs, and leads to code bloat/smell much more quickly than other commonly substituted languages.
From a business perspective, the money you save on scaling (assuming your app is more compute efficient under Node) is wasted on salaries and opportunity costs stemming from longer dev time, more QA, and more frequent outages.
IMO, Node is an awesome experiment, a fun language, a great tool for specific use cases, and a terrible fucking choice for an entire website.8
Ouuu today I experienced how web-devs must feel...
Task: create a form to answer questions with yes/no and a database behind it to collect stats.
So login to phpmyadmin
1. Wrong password got error message
2. No error message, still at login screen, but in address I see a token
3. There must be something wrong
4. Reinstalled phpmyadmin and mysql-server several times, wasted one hour on it - still stuck at login screen
5. Tried different browser and it fucking works!
6. Realized that cleaning cache fixed it...1
I've been a frontend engineer at 6 companies for the last 10 years. Both big and small companies currently at the largest I've ever worked for. I'm totally over it. Maybe burnt out is the term. I have zero motivation to do any work or coding. I'm not a lazy person. I love working, solving problems, learning new things. I'm just sick of what I do. I used to love following all the newest tech trends, following devs on twitter, checking hacker news and creating side projects. Now I feel like my job has lost all that joy and excitement. I work remote and have been for the past 3 years. I wonder how much of that, not having any social feedback and interaction around the job has attributed to me feeling like this. All the JS frameworks suck. PR reviews, process, requirements; I'm just tired of everything. Has anyone else experienced this? If so, what did you do? Were you able to find the passion for programming again?14
Any people here who experienced derealization?
Just sharing it here because I think that devs (or other stressful desk jobs) are especially susceptible to it.
I’ve had the feeling that my perception of the world has been kinda „weird“ and unsharp for months but I always thought „I’m sure it’s because I drink too much. I’m sure it’s because I don’t eat healthy. I’m sure it’s because I don’t do sports. I’m sure it’s because I don’t sleep enough“ etc.
I knew about derealization but I always had the opinion that it’s one of those psycho diseases that are all made up.
When I started doing some research on it i learned what it actually is..
A „defense“ mechanism of the brain to protect the brain from shocks and stuff or just a mental disturbance and that it’s kind of a vicious circle once you actually notice it.
It’s only getting worse because you focus on it and check in on it if it’s still there..
Just a few days ago I started to ignore it and told myself „it’s fine, it’s a natural experience, just ignore it“. It changed things a lot..
I feel much better just because of the fact that I’m no longer afraid of it.
Enjoy your weekend, cheers!8
A loooong time ago...
I've started my first serious job as a developer. I was young yet enthusiastic as well as a kind of a greenhorn. First time working in a business, working with a team full of experienced full-lowered ultra-seniors which were waiting to teach me the everything about software engineering.
Beside one senior which was the team lead as well there were two other devs. One of them was very experienced and a pretty nice guy, I could ask him anytime and he would sit down with me a give me advice. I've learned a lot of him.
Fast forward three months (yes, three months).
I was not that full kind of greenhorn anymore and people started to give me serious tasks. I had some experience in doing deployments and stuff from my other job as a sysadmin before so I was soon known as the "deployment guy", setting up deployments for our projects the right way and monitoring as well as executing them. But as it should be in every good team we had to share our knowledge so one can be on vacation or something and another colleague was able to do the task as well.
So now we come to the other teammate. The one I was not talking about till now. And that for a reason.
He was very nice too and had a couple of years as a dev on his CV, but...yeah...like...
When I switched some production systems to Linux he had to learn something about Linux. Everytime he encountered an error message he turned around and asked me how to fix it. Even. For. The. Simplest. Error. He. Could. Google. Up.
I mean okay, when one's new to a system it's not that easy, but when you have an error message which prints out THE SOLUTION FOR THE ERROR and he asks me how to fix it...excuse me?
This happened over 30 times.
Later on I had to introduce him to the deployment workflow for a project, so he could eventually deploy the staging environment and the production environment by hisself.
I introduced him. Not for 10 minutes. I explained him the whole workflow and the very main techniques and tools used for like two hours. Every then and when I stopped and asked him if he had any questions. He had'nt! Wonderful!
Haha. Oh no.
So he had to do his first production deployment. I sat by his side to monitor everything. He did well. One or two questions but he did well.
The same when he did his second prod deploy. Everythings fine.
And then. It. Frikkin. Begins.
I was working on the project, did some changes to the code. Okay, deploy it to dev, time for testing.
Error checking out git. Okay, awkward. Got to investigate...
On the dev server were some files changed. Strange. The repo was all up to date. But these changes seemed newer because they were fixing at least one bug I was working on.
This doubles the strangeness.
I want over to my colleague's desk.
I asked him about any recent changes to the codebase.
"Yeah, there was a bug you were working on right? But the ticket was open like two days so I thought I'll fix it"
What the Heck dude, this bug was not critical at all and I had other tasks which were more important. Okay, but what about the changed files?
"Oh yeah, I could not remember the exact deployment steps (hint from the author: I wrote them down into our internal Wiki, he wrote them done by hisself when introducing him and after all it's two frikkin commands), so I uploaded them via FTP"
"Uhm... that's not how we do it buddy. We have to follow the procedure to avoid..."
"The boss said it was fine so I uploaded the changes directly to the production servers. It's so much easier via FTP and not this deployment crap, sorry to say that"
You. Did. What?
I could not resist and asked the boss about this. But this had not Effect at all, was the long-time best-buddy-schmuddy-friend of the boss colleague's father.
So in the end I sat there reverting, committing and deploying.
It's soooo much harder this deployment crap.
Years later, a long time after I quit the job and moved to another company, I get to know that the colleague now is responsible for technical project management.
Karma's a bitch, right?
Worst interview rejection.
I was just out of college and making the interview rounds set up through my college's job placement.
I wish I still had the letter (I would have attached a screenshot), which
started out nice enough with the usual 'It was a pleasure meeting you and thank you for your interest in the position..' blah blah blah.
Ending with "You will never be considered for a developer position here at MFA Oil."
I was like "What the hell happened?!" I thought the interview went great..I had no experience and she made it clear they were looking for experienced developers, but no weird questions+answers, nothing. If anything, I had to be the most vanilla of the 10+ other college-grad devs waiting in the waiting room. Interview was maybe 10 minutes with the standard script of questions like 'Where do you want to be in 5 years?' which we all knew and rehearsed.
My only guess was they had me confused with someone else.1
People are saying to improve you need to ask questions. In case you don't have friends that are in IT, who do you aks questions? Those silly ones that google can't answer? I don't want to go to SO, that place is toxic, and asking a dumb question on devrant feels like a waste of peoples time as well. Is there a platform for alone-ish developers to ask more experienced devs questions? without being shamed to death?13
I'm gonna be job shadowing some programmers to see what it's like first hand in the field soon! Its my senior year and it'll count as a field trip for my school so I won't get counted absent!!3
Well I recently decided to apply for a job although I was planning to go to college in full time this October.
I saw the job ad whilst being active on Stack Overflow. As I just finished my apprenticeship some months ago, I decided to call the firm and ask if I can apply. I clearly stated what I have done before and what knowledge I've gained and what I'm not able/willing to do.
I was "allowed" to apply and additionally took two coding challenges (I completed all tasks with the correct results) as well as a one-hour telephone interview.
After that I almost immediately got invited to a personal job interview after the firm's boss agreed.
The meeting ran very well and I was able to correctly answer almost all questions. Although I was applying for a complete backend position I was asked unconditionally many questions about frontend/webdesign, what I clearly stated that I'm not good at this and thus also not looking for a job with such an requirement.
Two days later I got the response form the HR, that they were looking for some more experienced (within a professional software development team) which I didn't because I was mostly working as the programmer and IT guy in non-IT department in the company I worked before. That hasn't been a mystery I wasn't telling before. 😮😮😮😮
But HR additionally told me, they noticed - whilst in the recruitment process with me - that they already have enough backend devs and are seeking for a frontend dev instead.
Well then why the f*ck do you upload a job ad when you suckers don't need that position? And why the hell do you think you then have to waste my time with a frontend-oriented interview? Get your shit on the way and just invite people you really want to employ.
So rethink. Much wow.1
def best and worst dev experience from 2016 was a 4 week advanced dev boot camp for work. it was a smaller classroom with about 20 experienced devs in it. it was bright in there. a lot of strong minds backed by strong opinions and even loud voices at times, these are devs after all(so picture that for 1 month straight, 8 hr days). first 2 weeks was all new stuff. it was like a waterfall on head. I kept getting paired with weakest person in the camp for the weekly clone projects which didn't help matters for me or her. after the second week I started to grasp what we were doing and they started mixing up the groups. by the last week most everyone in the camp had learned so much, we had come so far we all kinda bonded through the experience. the final projects Imo were all very impressive. we were all pretty proud of ourselves I'd say. I never learned so much in such a short period of time. immersive training is the only way to go. those week long standard lecture lab workbook tech training courses are weak!! u wanna learn something, u gotta get in there and get dirty with it.1
So so so frustrated why is finding the right job such a fucking hassle! Landed my first junior dev job that was not what I was expecting mostly I work jira ticket written my middle aged morons to update PDF's servers that never had anything deleted from them 100k of files and about 10k folders shit you not. Don’t delete anything co worker deleted a file that took down a couple thousand person call center.
Looking at other junior positions with junior in the title and they want 4-7 years expierence at two different places. WTF if I have 7 years I would think I would a senior dev or close to one.
Just there is such a disconnect between the people who post the ads and vett the candiates to the hiring managers.
Does it get better? Started going to meet ups to meet more experienced devs in my area but still trying to find the right fit.2
When shadowing "experienced devs" as a "new dev" remember that if you fix their problems they will tell everyone they did it. At least that is my experience.2
It bothers me when applications faill and say that they have "experienced an unexpected problem with windows". If it was expected, the devs should have fixed it.
Not to ask the same question twice, but really hope for answers from you experienced devs.
How did you guys move into landing clients for yourself? Also, Have any of you used Instagram and landed gigs?
Thanks in advance guys/gals10
Thank you all advanced developers to make such great extensions !
2 extension modules needed, found in 2 days, with all the bonuses.
It's saving me weeks of work. And the show goes on.
Never had a real fight referring to any development - stuff, because most devs around me are more experienced and most of the time I can see the point in their opinions. I definitely had some discussions about some constructs in C++ for example. But thats it.
Running a small company. All of us work from home. I am a designer and coder in one person, but now mostly taking care of cash flow, work done etc., while I have my dear girlfriend as only designer and an old friend as only front/backend developer. We are doing mainly small presentation websites on drupal, and a lot of webdesign.
Now I want to ask more experienced devs here. As the "main guy" I am responsible for everything running smooth with clients, money flow etc. But I am constantly running in a serious problem with my developer.
He most of the time gets the job done. But it is as fucked as possible. It looks good at the first view, but when you check the code... Oh god. Not only once he wrote me he did the job and when I checked it, it was like 50 percent done and rest was let untouched. He is using the oldest approaches in css as possible. Most of the time setting fixed widths even when I told him not to do so. Thing is, he knows how to do it properly, but he rather set the fixed width for all the devices than write something more scalable (imagine fixed width buttons, now imagine a website with 5 translations and now imagine how it behaves on mobile phones).
I want to be in a state where my dev writes me he did the job and I can INSTANTLY pass the changes to client with a trust of good done work. Without checking constantly all the work after him. Or it is normal and it works like that everywhere?
As to mention, I think he is pretty good paid and this is not money problem. It even does not look like he is demotivated or anything. When I speak to him it looks more like he is lazy to learn new things and lazy to do a good work. What would you suggest? Thanks4
Everything I know is self taught... From a time I dunno when I'm 20, so likely just after the year 2000
From my perspective I think different from most devs more formally trained, which can be to my advantage , the downside of this I'm terrible with names, everything in computing has a anagram.
I'm bad with names anyway... Dyslexic 😉. But if explained to me I know what it is your on about.
I consider myself a good dev, not experienced but otherwise good. But I want to be the best...
I'm also a hacker (nice one) which I think helps me build better more secure programs knowing common vulnerabilitys
I'm proud of what I've achieved so far. Whilst I'm not perfect nor is my work that's what I work towards ... As should every dev
Guys I have something important to ask you, more experienced devs here. I am at the end of my Bachelors Degree and currently applying for jobs with Java. I have always been really interested in C++, but thought it was too hard and all of that. Just now after two years of developing desktop/web apps with Java/Spring i feel I am ready to go low level. Do you think I should focus on Java or go with C++?
Any oppinion is welcome and thanks in advance ;)6
Most satisfying bug, it was something with good old $.ajax, way back when Axios wasn't a thing and SPAs weren't so widely used.
I was somehow able to fix the call params for a file that would not load with any other setup. Maybe it was just setting async to sync or something like that, however the thing is I was not familiar with AJAX at all, but I managed to get it run.
Then I googled, why its working and figured out all the answers on SO and other pages were the exact thing i set up for my call. I was so proud
some context: I was struggling with this bug for days and asked more experienced web devs, everybody answered, your code should just work fine.
Maybe thats why I have a positive relation with SO, because the first thing i searched there was something that I figured out myself, haha
Experienced devs please tell help me.
Learning software development has been a challenge. Many times it's frustrating.
I also learn languages and I find them to share one trait with software development, which is complexity.
At first I looked at languages the way I'm currently doing with software. I'd look in a new language and after decided it's cool to learn it, I would stare at it for a few weeks trying to realize what the heck I was going to do. I wouldn't even know how to get started.
Eventually this stage goes away and I think that is about to happen with me with software.
But then a new challenge would come, which is me not making progress as I wanted. That's sort of happening with me by learning software as well, bit in language I now know how to deal with it.
That's because I work full time with something that isn't in my interests and when I arrive home Im tired and want to relax. So I decided my language learning had to go slower as long as I have this job, meaning no hours spent in front of books or a pc studying - that's what I could do with English, I was a teenager and had 12 hours a day to do whatever I wanted.
So I usually spent 5 minutes here and there learning something in my target language when I can, no frustration needed, my only rule is: practice everyday, even if I don't learn anything new.
With software, that doesn't apply though.
So, what I mean by tracing a parallel between these to fields is that I have a strong conviction is that once you get the principles on how a certain kind of learning works, you can apply it everywhere in the field. But with software it's been harder.
Anyways, I see that are some principles that apply, cause trying to learn software is changinge and teaching a lot of things like:
*you have to read a lot (of documentation) . At first I thought all documentation was painful to read and understand, but I found out some software are well documented and one can use those only to get used with it.
*immersion / discipline are important. I'm not very disciplined, I'm better with immersion but both are important if you need to acquire complex subjects/skills
*how to deal with complexity. I installed Arch Linux a few days ago. Just to install it I ended up reading more than 20 pages of documentation (install guide, Wpa supplicant, systemd, networkd, xorg, etc etc). Gradually I'm realizing that when you have to install/tweak something in that distro you necessarily spend a bunch of time trying to understand how it works, otherwise you don't get too far like in Ubuntu or Debian.
*and lastly the one that bothers me. Constantly getting frustrated and feeling crap about my poor skills. No matter how much I progress, it still seems like I'm stuck.
(that's when I ask your help/opinion :) )4
Developing a News app in android and kinda struck at the point where a new news is added to the server and then to be notified to all users.. I mean I want to know how to correctly implement push notifications and will I need an XMPP server for that ? If so ,then which one do all you experienced devs suggest..?
So what Linux distribution do you guys use for regular usage,development and stuff..
I'm currently on Linux mint, planing to upgrade to a more PRO distribution for the heck of it...17
This is not a rant but more of an advice post. I'm studying Economics and computer engineering in Germany, but our programming course is really bad. I wanted to ask some of the experienced devs if there is a good website or a good book where I could learn Java?
Hope you guys can help me3
I would ask this on Sololearn but 90% of people on there are morons who struggle to even use the app let alone read. A page can give you the answer to a question that follows and you got people saying that they need help with the answer. I mean how dumb can you be?
I'm not looking for an easy ride but I do feel I lack direction and with so many resources out there I'm a bit lost as to what experienced devs think are good.
I'm pretty consistent on at least on hour a day, 7 days a week. Though I only have about 2 months of experience which isn't crap in regards to the bigger picture. So I'm still extremely green but also very dedicated and want to learn so I can change careers.
Anyways opinions and or criticisms are welcome.Cheers.18
Any of you experienced Devs have any recommendations book wise for backend development (framework, unit testing, vcs, server deployment...) For java.
FYI I do have a LITTLE experience with MVCs6
Read about concepts that are new to me and try to implement them.
Code reviews with experienced devs
Experienced devs: Have you tried working with a mechanical (and/or custom) keyboard? Has it changed anything? Would it be worth investing in?
This question has been bouncing around my mind for a bit. Please let me know if I've accidentally copied the same question from someone else.8
Alright, I'm gonna need some help from more experienced devs.
tldr: how does my sister test my website if she can't run it?
I'm making a site (for myself, I've talked about this in other rants, most likely won't go online so I don't want to spend money on this), and my sister is helping me with the sales part of the project. It's basicaly a web store.
In a couple of months, she is going to have a baby, and will stay at home for 5 months. Since she helped me with it, and I don't really know all of the steps that go into online purchasing (she kind of works with this, and makes a lot of online purchases, from everyone I know she was the best person to go to), we want her to test it while she's at home with the baby, just in case I missed or didn't understand something.
The problem is: she doesn't understant anything about programing and probably never seen a command line, and since this is laravel, I will need to install a lot of things in her computer, which will be useless for her after she is done, and teach her some commands to run the site.
Also, like I said, i don't want to spend money on this, since she will only make a few tests and that's it, it would go offline after.
She is smart, she could probably do this, so if there is no way of doing this is ok, but if there is it would save her a lot of time while testing and with the baby, and save me my time at work.
I would want something like git, but where I could run the site without a lot of steps.
Does anyone know how she can test it? Is there even a way?
Thank you in advance 😁6
Any tips from experienced and seasoned devs for a second year comp sci student aspiring to get an internship at Google ? Anything you would suggest I do in general regarding life and compsci and any mistakes I shouldn't make? Thanks :)2
Just wondering if heading to a burnout is common among us.
I had some responsabilities in releasing an application for the humanitarian comunity last year. Quite important if you realise it can help to save lives in Palestine and Syria, so I was very motivated to succeed.
Unfortunately my manager, a former developer, could not admit we needed time to integrate devs, test, etc...
So I ended up chronically lacking sleep, like few ours per day and no sleep the week end.
... and i finaly just jumped on the first other job I saw to make sure I would not fail my life miserably under a train, because life is not worth it when you don't sleep.
Did you or someone near you experienced that?2
I added a class to our data classes that could be represented as a button in the dataview in the GUI instead of creating a proper UI for my problem
- It was quick
- I wasn't a full dev yet (more a student) and didn't want to learn how to create a GUI
- I saw it used in different places by more experienced devs even though I put a comment some time later to not use it because it breaks several concepts
- I get annoyed everytime I see it now ^^
A question for the experienced devs out there.
When you are the only one working on an application, how do you make sure that it is secure?1
Any experienced devs can share some tips on what red flags to lookout for when applying for software engineering jobs and internships?1
I've been wanting to take on some freelance work in my free time. As I have a lot of free time.
So does anyone know a site more geared towards amateur to intermideate dev's who want to gain experience and are willing to work at lower rates because of that ? Or any site where i can just hop on and find some work. I've been suggested upwork but that seems to be more for more experienced devs.4
Question directed to devs who know a bit about setting up middle sized architecture.
Prestory: Joined into development of a middle sized online game. Figured they created a monolith over the last 6 years up to a point where nothing works properly and nothing can be changed without wrecking the whole system. Figured a monolithic approach isn't such a great idea.
Current Situation: In a different, same scale online game development team, game itself working but team is struggling with architecture.
My job is to come up with an approach on how to set up masterserver/matchmaking/database etc. Reading through various articles about common principles (SOLID etc.), i figured that a microservice+event-/servicebus architecture may work for that kind of project.
The idea would be to have a global interface in which microservices can be hooked. So a client registers to a client handler on startup, then starts to queue for a game, the client handler throws an event on the bus to register the user to matchmaking. The matchmaker happens to listen to those events (Observer Pattern) and adds him to matchmaking, when a match is found it throws an event on the bus to connect the user to the server, etc. One can easily imagine a banhandler throwing in a veto to cancel such an action, metrics and logging is fairly simple to add (just another service listening to all events), additionally Continuous Delivery, FRP and such are also beneficial advantages and it is said to scale well.
The question is, would you do the same, is there maybe something i might be overlooking? Do you have better ideas?
Keep in mind that we are not too experienced and are bound to different languages (python, C++ and java mostly) and are a small (4 Devs) Team with different strengths.
Thank you for your feedback and criticism!1
I can't drink at work (unfortunately), so this is a story from my last semester at school.
I had a somewhat large group project for my senior project making an Etsy-like site for a nonprofit. We had sprints and meetings with stakeholders and whatnot. I was already really experienced in the tech we were using as I had to use it for work, so I was doing most the project on my own and just advising the others on what they needed to do.
On one of the meeting days I met with a friend and got drunk with him before class. Then 10 minutes later I had to present the site to the stakeholder and get feedback. My co-devs could kinda tell I was sloshed, I don't know if the stakeholder did; he didn't say anything anyway.
I presented perfectly normal and made live changes for him so he seemed impressed. When I'm drunk, the way you can tell is that I'm very deliberate with my words and actions, so at worst it probably looked like I was nervous.
I've coded drunk on school projects before and once when working from home. If anything I'm better as I get super focused on work and can't get distracted. Still can't convince my boss to get a scotch fountain installed...1
Do you more experienced devs have any recommendations for books/online courses etc. about design pattern or "What is good code" - principals?