Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API

From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "best-practices"
-
preface: I'm fucking exhausted and angry.
Why does everyone assume I know how to do frontend?
Why am I always the design girl?
Why?
You hire me to do backend. STOP GIVING ME FRONTEND DESIGN CRAP. I HATE IT.
AND STOP GODDAMN YELLING AT ME FOR NOT MAKING SOMETHING RESPONSIVE.
I DON'T KNOW HOW.
yes i can learn, but I CAN'T FUCKING PICK UP A SKILL LIKE THAT IN A DAY. Also, I fucking hate it.
STICK IT UP YOUR (min-width: 1400px) ASS.
But seriously, I've spent 13 hours today figuring out completely new things (webpack, susy, express.js, cloudinary, responsive best practices, more webpack) because the boss is in panic-mode (his preferred state) and wants this project released last monday.
guess what? it isn't done.
because i still don't know how to do everything. and ofc there's nobody to ask because there never fucking is.
Seriously, boss-man. hire a fucking designer, and stop being an illiterate sales goon while you're at it. ffs.54 -
"Can you put my site as the first result on google?"
I can add SEO to your site, just give me your preferred keywords, a description, and let's make sure we follow white hat best practices etc.
"No call someone at google and ask how much to go to the top of the list"
So you want to pay for ads or..?
"No get a figure I can pay to get to first page"
"Or can you just edit the google"
... And so I never renewed that contract ever again, the end.12 -
TOP 10 PROGRAMMING BEST PRACTICES
#1 Start numbering from 0.
#10 Sort elements in lexicographic order for readability.
#2 Use consistent indentation.
#3 use Consistent Casing.
#4.000000000000001 Use floating-point arithmetic only where necessary.
#5 Not avoiding double negations is not smart.
#6 Not recommended is Yoda style.
#7 See rule #7.
#8 Avoid deadlocks.
#9 ISO-8859 is passé - Use UTF-8 if you ▯ Unicode.
#A Prefer base 10 for human-readable messages.
#10 See rule #7.
#10 Don't repeat yourself.12 -
Let's get rid of the developer training: Pair Programming
Let's get rid of the software testers: Test First Programming
Let's get rid of the project managers: Agile
Let's get rid of the project planners: Scrum
Let's get rid of the system admins: DevOps
Let's get rid of the security guys: DevOpsSec
Let's get rid of the hardware budget: Bring Your Own Device
Let's get rid of the servers: Cloud Computing
Let's get rid of the other scruffy guys: Outsourcing
Let's get rid of the office space: Home Office
Let's get rid of the whole fucking company: Takeover10 -
Breaking devRant news: we are extremely excited to announce the featured guest for the first episode of our podcast. He co-authored possibly the most famous software development book of all-time - "The Pragmatic Programmer" and is well-known for many other titles including "Practices of an Agile Developer." For the devRant community, one of his coolest/fun claims-to-fame might be that he is the inventor of rubber duck debugging, a frequent topic of discusson here on devRant. Beyond this, he is also one of the founders of the agile development movement. Our first featured guest is Andy Hunt (http://www.toolshed.com/about.html)!
As you can probably imagine, we're very excited to have Andy on the first episode of the devRant podcast and there's so many things we want to ask him. We want to give the devRant community a chance to submit questions too because we know devRanters will come up with fun questions. So feel free to just submit any questions you'd like us to ask on your behalf as comments on this rant, and we'll pick the best ones. Thanks!25 -
Here's my piece of advice for new devs out there:
1 - Pick one language to learn first and stick with it, untill you grasp some solid fundamentals. (Variables, functions, classes, namespaces, scope, at least)
2 - Pick an IDE, and stick with it for now. Don't worry about tools yet. Comment everything you're coding. The important thing is to comment why you wrote it, and not what it does. Research git and start using version control, even when coding by yourself alone.
3 - Practice, pratice and pratice. If you got stuck, try reading the language docs first and see if you can figure it out yourself. If all else fails, then go to google and stackoverflow. Avoid copying the solution, type it all and try to understand it.
4 - After you feel you need to go to the next level, research best practices first, and start to apply them to your code. Try to make it modular as it grows. Then learn about tools, preprocessors and frameworks.
5 - Always keep studying. Never give up. We all feel that we have no idea of what we are doing sometimes. That's normal. You will understand eventually. ALWAYS KEEP STUDYING.9 -
Boss: Great news, we are getting another backend dev from another team to help us out.
Me: Cool, hopefully we don’t have the same trouble as the others, not replying, never writing anything down etc.
Boss: No, I’ve worked with her before. She’s much more passionate about doing things right, using best practices and all that stuff.
Me: Oh that’s perfect, great news!
Boss: Yep! ... just be aware she has a tendency to get very easily confused. She delivers the wrong thing from time to time and might need to redo stuff semi-regularly.
Me: ... ... ...
Boss: It’ll all work out. Don’t worry. Ok gotta run.15 -
devRant is a place to rant. Not a journal of best practices.
Can I just rant without giving a long winded backstory?
Do I have to explain myself to prevent people from commenting that the problem must be me?
If you read a rant, and you can't relate to it sympathetically.
Move along! That rant is not for you!
When people are trying to vent no one wants to see your snippy little comment about how 'unprofessional' they are being.8 -
I just quit my job!
The company I worked for is a small company founded in Jan of this year and I was there since the early days but wasn't a founder nor a partner.
It was me who decided on which tech stack we should use, which languages, what servers to use, best practices and almost anything related to development. I was the lead developer and project manager for the biggest project they had.
But they decided that I don't deserve to be a partner. I was making more than 50,000 SDG per month for the company but only paid 6,000. The worst thing is that the partners don't know shit about software development. They have no vision for where should the company be in the future.
I just had enough. I already had my own software dev business before joining them, and it was successful.
I am going back to building my own company with my own vision.
I know I made the right decision, but it still hurts leaving a company after u made it what it is today. It is like your own baby and you are abandoning it.
Hopefully, it is for the best.9 -
Why not have a custom (500 line) JSON mapper... you know... fuck those auto mapping libraries out there...12
-
To all the design pattern nazis..
Don't you ever tell me that something is impossible because it violates some design pattern! Those design principles are there to make your life easier, not something you have to obey by law.
Don't get me wrong, you should where ever possible respect those best practices, because it keeps your software maintainable.
But your software should foremost solve real world problems and real world problems can be far more complex than any design pattern could address. So there are cases where you can consciously decide to disregard a best practice in order to provide value to the world.
Thanks for reading if you got this far.6 -
You just came in today, being new in your position. I've been with the company for around 5 years, and you're the new guy. Look, I absolutely respect your skills. You're not a newbie coming out of uni, ok? You're a skilled sysadmin. But you asking me "what is your college?" and after me telling you I majored in linguistics, your answer "huh, that's why" and explaining why I'm wrong in my programming practices (which are taken from the Apache foundation) is utterly bullshit. Fuck off!
1) The fact that you have a BS in CS doesn't mean you know the best. I've worked as a programmer for some time. You were never paid to write a line of code.
2) Even if you were absolutely, positively, non-questionably right, you have no right to be condescending.
So, can you just shove your degree far up your ass? Because my friend, you're uppity as fuck just because you spent 4 years in college learning theory that you never applied in real world. I spent years learning my programming skills alone, after 9 to 5 work, during the evenings and fucking weekends. I don't need to prove myself to you, you fuckity fuck, I have proven myself to our employer over the last five fucking years.
Fuuuuuuuck!10 -
!rant I got permission from @dfox for this.
I'm a visual learner and like to see and hear what I'm being taught. I also am fed up with StackOverflow.. plus, it lacks in detailed learning and best practices. I created a new platform that allows you to view and create live talks for development discussions, demos, and presentations. Think of it like a 24/7 dev conference.
I'm releasing it early to devRant users. Just note, that it is in early beta but I do regular releases.
Go ahead and start creating your talks at http://unityco.de17 -
Public service announcement: Do not get married to your language, tools, or way of doing things. If there's an easier solution to something, try it before dismissing it. No language is perfect, and dumping everything on the responsibility of an API or framework can cause more headache then solve it.
Case in point: I love Java for backend programming, but node.js is a better solution to frontend programming then depending on JSP's and HTML within the same Java project. Less things go wrong and it's easier to debug issues.
There is no best programming language. Only best practices and using the right tool for the right job.
#exceptC++fuckthatlanguage
:^)15 -
Starting a new project
Me: This time we'll follow all the best practices, do atomic commits and write meaningful commit messages.
Coworker: Yeah! Let's start.
40 commits later.
Me: Why is .idea folder in the repository?
Coworker: Sorry My Bad.
Me: 👿👿👿👿6 -
Yesterday I had my performance review discussion with my manager after about 6 months into the job, which is my first dev job. Before this, I had spent about 2 years in a support role after graduation, but always yearned to build something cool and be a full time developer. Hence I had made the lunge in spite of a pay cut into a development role.
For the past 6 months I was asked to develop a bunch of features on top of legacy code which is ~15 years old. I did my best and brought in the best ideas and practices onto the table and delivered on time. The features turned out great. I enjoyed working with the team and the team loved me back!
But at the back of my mind, I was hoping that I would get to work on something new and relevant. To quench this thirst, I used to spend my personal time on side projects.
The managers and the leads who have been observing me all along, told me yesterday that my manager got AMAZINGLY positive feedback from the leads and my teammates (who are like 10 years senior to me). Going forward, I get to work on any CRAZY idea and pick up any technology I like with the goal of revamping our product. Essentially I get to work on my side projects full time as long as it adds value to the company.
Ohhhhhh YEAH!
Wish me luck. 😎1 -
Last year I signed in for a course called "Best Practices in Programming", and part of the course was to get the code of our current projects reviewed by a professional developer. I had a horribly written (out of inexperience) code in Python. The guy who had to review my code basically said I had no idea about coding but went on helping me a lot. Since then I started to learn some concepts of software engineering, how to code more efficiently, and so on and I've been much better ever since. So kudos to him for putting up with my spaghetti code and sending me in the right direction!1
-
"...the way he has written the code, it feels nasty man. I would have done it this way..."
Fuck you and your feelings. If you think my code is bad, give justification for it. Explain the fucking reason. Stop saying it "feels" like a bad code.
Fucking tired of this mentality in most of the developers. Why is it that the moment you look at someone else's code, you feel like you would have written it better. Programming is problem solving. And you can solve a problem in couple of different way.
If the code is absolute shit, has followed no best practices then yeah, go ahead and call it a bad code. But just because you would have moved some lines here and there, that doesn't mean the other persons code is horrible.
Goddamit!13 -
Does anyone know if there's a Bob Ross of development?
I feel like I just need to hear someone coding or talking best practices in a chilled out relaxing way to help me through the day.16 -
So I spent 4-5 weeks explaining how shit the current code base was, implemented gulp tasks to lint js, CSS etc, written shed loads of coding standards and best practices to follow. At this point everyone was onboard with the changes and thought brilliant were going to start getting some good code coming out of this team.
I go on holiday for a week, come back and fucker has ignored the documentation disabled the linters in the gulp tasks and the code is back to square one SHIT!!
Plus everyone still committing to master!!!!
Why do I bother!!6 -
I'm in that weird spot where the more I study programming, the more I realize I know next to nothing. I get pretty demotivated at times because it can be so overwhelming to study for hours, finally understand a topic... only to find out the next thing is even worse and there's literally thousands of things to learn, from languages themselves, to rules, best practices, paradigms and so on and so forth.
How do you guys deal with this? Do you even have the same problem?10 -
You know what's more irritating than working with a partner who doesn't understand how to properly build an API?
Working with one who fully understands the best practices but doesn't give a shit to implement them until something breaks.1 -
You guys made my whole day for the first time since I joined. (yes all of you!)
1) I had a 'fight' with a guy I'm making a startup with. Had to explain some of the story of my life, just to clarify that I'm not evil or generally unwilling to understand - regarding me, having the need to keep using practices
2) I've found that a whole niche-community of people seems to ignore the rest of the community and won't tag along. Having spent several months to be able to help, and receiving shit or absolutely nothing, for finally trying
3) Was in a bad mood the moment I woke up, because I fought with my girlfriend last night because she fails to communicate simple things and won't realise it.
Sorry for the bad punctuation, I tried and smartphones aren't a nice way to edit such things.
So my rant is basically a thank you! Not a rant.. But still, I think you people are the best for being so relatable and making me laugh, and feel like there's more of 'my kind'.
I also just fixed a bug in my app by (finally!) asking the framework maintainer what's up, and got a response which made no sense in a logical manner.. That's a rant for another day, I'll aggregate all the 0 fucks given, when I'm finally able to leave this thing behind, and give you a proper curse-filled shit stack of the nonsense I'm experiencing!
The bug would still live if I weren't so energized by devRant
EDIT: '!' != ','1 -
!rant
Our lead dev in the company seems to be a smart guy who's sensitive about code quality and best practices. The current project I'm working on (I'm an intern) has really bad code quality but it's too big an application with a very important client so there's no scope of completely changing it. Today, he asked me to optimize some parts of the code and I happily sat down to do it. After a few hours of searching, profiling and debugging, I asked him about a particular recurring database query that seemed to be uneccesarilly strewn across the code.
Me: "I think it's copy pasted code from somewhere else. It's not very well done".
Lead Dev: "Yeah, the code may not the be really beautiful. It was done hurriedly by this certain inexperienced intern we had a few years back".
Me: "Oh, haha. That's bad".
Lead Dev: "Yeah, you know him. Have you heard of this guy called *mentions his own name with a grin*?"
Me: ...
Lead Dev: "Yeah, I didn't know much then. The code's bad. Optimize it however you like. Just test it properly"
Me: respect++;2 -
So my boss booked me a spot at a conference about "the future of online payments" and I received an email with auto created account (there was no sign up) with a clear text password.
I'm feeling pretty confident that I can trust them to guide and advise me on best practices when it comes to handling sensitive information.8 -
My code is always a battle between best practices and what I assume would be the most efficient way to do things4
-
former boss wrote three cyber-defense books. had his "collections" team sending plaintext passwords to high-side clients over unsecured email4
-
So.... We spend most our lives learning languages and methodologies and best practices and all that crap while depriving ourselves of sleep because the rules said if we did that we'd make something cool and have fun doing it...
But then *any company here* comes along and says make this shitty feature in *arbitrary time here* for our stupid *product here*.
You do it working overtime and sacrificing quality to have the client say afterwards that he wants something different (from his own specs).
And then the circle repeats...
I should consider a different profession...
Hey plants don't speak... Maybe I'll be a gardener!
Clip here clip there - done. I'll be a happy fucking script2 -
I don't think I could give the best advice on this since I don't follow all the best practices (lack of knowledge, mostly) but fuck it;
- learn how to use search engines. And no, not specifically Google because I don't want to drag kids into the use of mass surveillance networks and I neither want to promote them (even if they already use it).
- try not to give up too easily. This is one I'm still profiting from (I'm a stubborn motherfucker)
- start with open source technologies. Not just "because open source" but because open source, in general, gives one the ability to hack around and explore and learn more!
- Try to program securely and with privacy in mind (the less data you save, the less can be abused, compromised, leaked, etc)
- don't be afraid to ask questions
-enjoy it!7 -
Sometimes dirty code is more efficient than clean code.
If features get dropped frequently and requirements change every few days, writing best-practices, tested code is wasted time. Learned that in my first job where I thought the other devs were all bad. Until I realized their bad code pays my salary, and my clean code takes more time to develop.6 -
Had a job interview for a front end dev (Involving a technical test). After couple of days, recruiter says - Unfortunately they say that you are too focused on best practices so they want to pass.3
-
So I was reviewing my old code. Refactoring and improving the documentation.
This is a production app that is being used 24/7/365.
I see myself using "bar = foo" and there's even an explanation of what it does.
Apparently I resolved a relatively difficult Date object issue and had to use temporary variables.
Didn't know how to call them and ended up with these jewels.3 -
during code review...
peer: "you should pass this variable, and extract the logger from it"
me: "why? it is a 3 line logging function. why not pass the logger instance?"
peer: "because that is our best practice. It is the way we do things"
me: "why is it a best practice?"
peer: "because it is. We use it everywhere!"
me: "No we don't. And I still don't understand why is this a best practice. can you explain?"
peer: gives ups, did not look at the mr, and was not going to.
mr stays open. probably forever.11 -
Went to the ATM to get some cash.. entered an amount of 800 INR and to my surprise got an error saying "Your account does not have sufficient funds for this transaction" .. Instantly thought that my account has somehow been compromised.. checked the bank app and found out that I everything was normal..
As it turns out the ATM machine did not have 500 or 100 INR notes, thus it could not dispense my requested amount..
Now that's what we call a "Good" error handling..4 -
Best girl i've met.
I attended a CMS Conference last month(I don't use a CMS, i'm just interested with the topics about DevOps and UI/UX). I met this pretty lady ( I find her cute and awesome.) who's one of the speaker, she talked about design principles and applying it to BEM with SASS. After the talk, i asked her some questions about her dev't workflow like what tools she used and some best practices. Our conversation went well and exchange some of our knowledge and ideas also i introduced her to devrant (She's a wordpress user, i showed to her how the community hates WP, idk if she registered). After her talked we separated ways and ended seeing again after the conference as she's looking for a cab going to a mall (Same directions where i'm heading to), We talked again and decided to have dinner together. I felt like she's the best girl i met as she's into TV shows i like (Silicon Valley and Mr Robot). We added ourselves in FB and saying goodbye to each other. After a week or two, i just found out that she already into a relationship and it broke my heart.
I guess im back to the start, but i'm happy that i made a new friend.13 -
Vendor: We are very professional and follow best practices, we know what we are doing. You should trust us.
Also Vendor 5 mins later: DB passwords, API keys and SSH keys in repo. AWS Access Keys shared in screenshots in email.
Me: 😭6 -
Today I decided that I will quit my internship.
So mamy things are mismanaged and my supervisor avoids helping me. I'm not gonna even rant about shitty coding practices, or rather, lack of them.
Now out of 10 ppl team I'm sitting alone in the office because everybody, apart from me, can work from home. When I asked why do I have stay in the office - this is to provide me the best placement experience (wtf). So I sit here, knowing that even if I send an email with a technical questions, I will not get an answer. Atm, can't even give a fuck about trying to be productive. I'm so tired with these fake smily faces that cannot manage a single intern but expect me to do everything without any help.5 -
I hired 2 fresh out of school junior devs to work with me on my old web app.
They were brilliant, knew a lot of things, and were motivated.
They started complaining about how the code was shit, the db was shit, there were no best practices, the technology was old, bug fixing was boring, no comments in code.
I felt bad, very bad during 3 years, because they were absolutely right. I tried to work with them through better coding practices, rewriting, documenting etc.
Now they both have left.
I'm alone maintaining and evolving the application.
And I start to come across the code THEY developed.
What a bunch of shit. SQL queries bringing down the server. Duplicate code, because they didn't want even read the old one. Useless comments.
Performance killing functions. Exceptions swallowed without mercy. I have to clean up they poop.
I feel somewhat better, though. The application is still growing and holding the ground after many years and generating at least 800K$ per year in revenues.
Maybe better, but sad. I really wanted to share the project with somebody else but I failed, and I'm left alone....12 -
I seear man fucking shit php devs make it hard for people to appreciate the language.
To start, i don't think there is anything wrong with php. As a language I know damn near all of its pitfalls and have successfully deployed huge applications with minimal fuss.
The thing is...this shit seems to happen only when I AM THE MOTHERFUCKER THAT DOES IT
In any other scenario i am constantly cursing the original author under my fucking breath hoping that they choke on their own dicks. Fucking cunts.
Really man, some of the fucking code i have seen. This shit is dangerous as fuck and i can't believe that in 2019 motherfuckers would not have the decency to google for best fucking practices or learn it from a fucking book and shit.
Writing proper php code is not that fucking hard people, every fucking update to the language, every fucking tool that comes out is for the betterment of it.
Guess proper oop or functional paradigms are too complex for some dickheads. Hell, not even top to bottom procedural code.
Fuck me. Good thing is, boss is happy, the entire faculty is happy, the board is happy. Everyone is motherfucking happy.
Dez negroids better remember this shit cuz I just asked for a $20k raise.
I got a raise literally every time i ask for one so this one better make the cut.
Fuck shit php developers man. Y'all don't deserve the language, y'all make the language look bad, y'all make the community look bad.
Fuck you, die and eat a dick. Do all that shit in whatever order you prefer.12 -
Friend asked if I have ever built authentication using PHP and SQL...
Feel like sending links for them to research how instead of having me build it for them.
Teach a man to fish...?7 -
When UserID is an int(3) in one table, and then text(10) in another. And then the monent you see that the Username field is stored in both tables ......🖕🖕🖕🖕
Who dafuq wrote this crap?!?!?!?5 -
Looking for job opportunities, one grabbed my attention and I decided to apply. First, I had to fill a form with 40 questions, explaining and justifying development processes, best practices and overall knowledge. Ok, no problem. Form submitted, and I see a step 2. Now I have to build a single page site from scratch, and send another form with code, link, and more justifications regarding development. After that, my application will be sent.
Then I found this observation, saying the position was for a freelancer, that will receive work occasionally. Not a full time position as I thought.
Sometimes cleaning bathrooms sounds a better option.1 -
The guy who became my manager just pushes to the prod branch.
On a repo where another team clearly set up development and production branches.
This guy has been pushing code like crazy and I always wanted to take my time setting things up properly in our team: TDD, CI/CD, etc.
Because he pushed so much he became my manager and I was seen as unproductive.
Data Science and software development best practices just dont coexist it seems.
Yeah yeah, it's up to me to start introducing good practices, but atm "getting it done" takes priority over the real based shit.4 -
Overworked team spends 2 months hacking together a Codecademy clone in record time: avoiding best practices, conflating paradigms, throwing shit at the wall until it stuck.
But today I submit a small UI fix that used a table instead of `display: table`...1 -
When your home's infrastructure runs better and is more stable than some of the shit that's actually running enterprises because you actually do care about industry best practices and product quality.. it's a weird feeling. A very disappointing one, if anything.
Post-meritocracy, it very much seems to be a thing. And when you call people out for it because yes I do want to *be* the change that I want to see, they get all defensive and shun you. Yeah, let's make the world burn in inefficient, dysfunctional bullshit. That's a much better idea.
Are we humans really that far apart from the chimps that we descended from?
Worst part of it all, those incompetent bastards that can't possibly admit and work to improve their mistakes are the ones that are behind the companies' steering wheel. That too is such an excellent idea. I bet that half of them got employed only because they took the lowest wage and could (barely) turn on a computer. Fucking morons...11 -
So, we’ve a small UK based dev team, we follow good practices and get good results. But ‘they’ want to deploy quicker (it was suggested we skip the test phases...) but don’t want to invest in more staff.
So their suggestion is to outsource development to Bangladesh and have us in-house devs work on discovery and innovation.
I’m uncomfortable with this as it feels they are thinking they can get quicker and cheaper dev done abroad (which I hate as it feels disrespectful to my fellow dev brothers n’ sisters).
Also disjointed as in my experience planning and dev’ing work best when you can talk face-to-face.
Thoughts?4 -
Expert: "The core problem with passwords is that they reside on a server."
I suppose that's true, but only if you're a complete moron. Store a hash of a password, and users can authenticate against it with a password that doesn't get logged. This is technology that's been around for over fifty years. If you're storing passwords on a server, you deserve whatever trouble you get.6 -
*Senior Dev:* Ah yes, we need to put try-catch in every function to handle errors and Logger.Log() at the beginning.
*Me:* Is not better to define a global error handler and use the stacktrace instead of doing all that?
*Senior Dev*: ...
*Senior Dev*: Is a rule here, do what I'm telling you.3 -
> asks for better pay
> starts trying to evaluate the quality of our efforts
> complains about doing things that are not good in the long run
> spends time mastering best practices
> unemployed2 -
So as all of you web developers know. If you are stepping into the world of web development you stepping into a world of unlimited possibilities, opportunities and adventure.
The flip side is that you step into a world of unlimited choices, tools, best practices, tutorials etc.
Since even for a veteran programmer, this is a little overwhelming, I'd like to take the opportunity to ask you guys for advice.
I know that 'there is no best' and that everything 'depends on what you want to achieve'. So how about just say the pro's and cons or when to use and when not to use. Or why you prefer one over another. Everything is allowed! :D
Maybe it will help others too. Start a nice, professional discussion:)
These are the parts I'd like advice about:
- frontend: what frameworks, libraries
- backend: language, framework, good practice
- server: OS, proxy (nginx, Apache, passenger), extra tips (like don't use root user)
- extras: git, GitHub, docker, anything
Thanks in advance everyone willing to help!:)
Also, if you only know frontend or backend. No worries, just tell me about your specialism!6 -
To all the data engineers in here: WTF is going on in your field?
I've worked closely with a dozen data engineers in the last 5 years (and talked to friends and internet strangers about this and get similiar responses), mine if them seem to know how to use a computer!
They don't understand git, ORMs, best practices, how to use a terminal, DAGs (important for using modern ETL scheduling tools like airflow and prefext), etc
Guys with 10 years of experience on their resume and they can't wrap a model into a flask app with 1 endpoint. They'll reference local files on their machine in w jupyter notebook and are shocked it won't work on other computers!17 -
I'm so fed up of this shitty ultra-ortodox industry
I've worked on many different projects, been in many different teams. It's an ever changing industry, but, surprisingly, it's so orthodox. Dev industry nowadays have some rules, that everybody adopts them as "best practices". You have to work on pull requests, and several of your teammates have to review your shit (as if they have nothing better to do).
I'm sick of people using fucking DTOs in shitty frameworks like Laravel. Using DTOs in Laravel is like putting mustard in a fucking chocolate cake.
I'm so fed up of SPAs and node.js. I've yet so see a single SPA that handles jwt tokens correctly. I'm tired of spending hours and hours, days and days, struggling with thousandls of layers of abstractions instead of being productive and getting the shit done.
Because end customers don't give a shit about your "best practices": They have a problem and you are getting paid for it to be solved, not for spending hours and hours struggling with stupid Javascript and its crazy async nature and their crappy libraries.
Damnit. I say. Now. I now feel better. Thanks for listening :)14 -
Vendor we('re forced to) work with, as we share a client. This is in their stylesheet. Fuck SEO best practices, amirite?! 😒5
-
I don't seem to understand why so many developers nowadays are focused on learning newer frameworks rather than focusing on best practices and learning how to code better.
"Hey I learnt React today, we should totally switch to it because it's so amazing"
> mfw the same guy doesn't even know how to follow coding styles, write good code that scales or document his code.
I think some people need to take a step back and focus on the more vital tasks of writing good code to begin with rather than getting so excited about every new thing that surfaces. It's annoying as fuck to deal with some of these people who you have to work alongside and be able to read their loopy shit code and all they are doing in their time is refreshing hackernews.8 -
(As a freelancer I was asked to do a couple of tasks on legacy code)
Let’s check this code, how bad can it be?
- all of the following: unreadable mess, no auto linting
- tests: some are there cause there’s not enough automation, others are poorly named
- frontend: somehow a genius made a react component for every variable in the store which only passes the variable to the child (wtf)
- backend: death by best practices
- ci/cd: “we have it but it’s broken”
Let’s fucking goooo 😎
Diagnosis: my therapist is getting rich
Chances to not cry tonight: close to zero
At least they pay well 🤷♂️5 -
I've been been in consulting doing systems implementations for about a decade. I just started a new e-commerce project with perhaps the most agreeable client I've ever encountered - in fact they're extremely eager to make my job easier. Just today one of the stakeholders, completely seriously, uttered the phrase "maybe we don't need to care about IE".
After ten years living thru every client cliche imaginable over and over again I now find I don't know how to trust. Their acceptance of best practices and my recommendations is almost unnerving...3 -
Software development best practices: decouple your code
Apple, on applying a bold text style: Nah.5 -
<rant>
Don't fucking tell me to move business logic from the service to the controller. Don't fucking tell me it will enable an "event driven architecture." Don't fucking use Angular for this project if you're just gonna shit on best practices and write convoluted, messy, inconsistent code and force your coworkers to do the same!
</rant> -
What was your most disappointing moment as a software developer?
Mine was the realization that when you're working for someone, all they want to see is the final product. The people paying you don't give a shit whether you put your braces on a new line, your domain model doesn't call a database directly or if you're applying the best practices. Your teammates do, but the people paying you don't.
People hire you to get the job done, and that job is to solve a problem for someone. Not in the way that's best for you, but in the most effective way for them. Since I realized this, I lost some pride in my work.5 -
I'll just start off with how I really feel. Fuck big corporations with their career robots and retarded practices!
Now for a story. So I work remotely for most of the time nowadays, since my company has as clients big corporations. Used to be embedded with said clients, but it became kind of painful to work with them all so I asked to be reassigned to a remote position.
Now for the retarded part: The fucking Klingons I'm working with have two tiers to their VPN, but won't let me have the full version because it would be too fucking expensive. I checked and it's fucking 50 bucks per year difference.
So for that the Klingons are making me code through a remote connection that has a "best effort" priority.
Fuck.
Anyway after 3 weeks of writing code at a 400-600ms latency I finally snap.
I try to use a proxy and it. I write one myself, gets balcklisted in 2 days.
After about another week of writing code through a fuck straw I start working on node socket with 2 clients and a server that encrypts the send data, and syncs 2 folders between my workstation and the remote one.
It's been a month now and it is still working. It's not perfect, but I can at least write code without lag.
Question for you peeps: What shenanigans have you pulled to bypass shit like this?3 -
Does anyone get the feeling that as they become more senior, they care less about meeting "best practices" and more of just "good enough"?
Best practices being everything in those books about TDD, unit testing, design patterns, design artifacts.
Good enough: enough so it won't blow up in prod, some tests but not 80-90%, some docs. Basically not like those public docs, open source projects/frameworks where function is covered
When I first started professionally, I was all about efficiency, good design, reducing technical debt, clean code.
But now, I look at problems and instinctively I may make these decisions but I don't really think about it much. First goal is to just get something working, clean it up later... Maybe.6 -
So for almost all of my c++ assignments I've recieved various emails from the instructor about things like "incorrect header guard" and "library inclusions out of order".
The first being that I didn't include the namespace inside of the guard (I did "FILENAME_H" instead of "NAMESPACE_FILENAME_H")
The second is that I accidentally included header files from my project before any of the standard libraries. This one wasn't even intentional, it was caused by vscode when it formatted/prettified the file.
EX:
#include "test.h"
#include <iostream>
In my opinion these seem pretty nitpicky and, especially that first one, appear to be more like naming conventions or best practices than something to deduct marks for.
On the flip side though I did accidentally store a couple functions in the global namespace which I understand isn't particularly safe. I also made a couple one line conditional statements that simply never evaluate to true, but I didn't think this was a huge deal.
I don't normally code in any of the c languages outside of college so I'm not sure how important these are to actually follow. I've apparently been deducted an entire 10 percent off the assignment because of the head guard. I know that every professor has different criteria for deducting marks, but even this seemed rather unnecessary.
What does everyone think?11 -
browsed LinkedIn articles, saw one about "good qualities of WordPress Developer", first bullet point is "following coding best practices" is it just me or that is one of the main things wrong with WP
-
Trying to be agile and employ modern best practices in a decades old traditional super-corp.
I feel like head butting a large nail1 -
Ok, here goes...
I was once asked to evaluate upgrade options for an online shop platform.
The thing was built on Zend 1, but that's not the problem.
The geniuses that worked on it before didn't have any clue about best practices, framework convention, modular thinking, testing, security issues...nothing!
There were some instances when querying was done using a rudimentary excuse for a model layer. Other times, they would just use raw queries and just ignore the previous method. Sometimes the database calls were made in strange function calls inside randomly loaded PHP files from different folders from all over the place. Sometimes they used JOINs to get the data from multiple tables, sometimes they would do a bunch of single table queries and just loop every data set to format it using multiple for loops.
And, best of all, there were some parts of the app that would just ignore any ideea of frameworks, conventions and all that and would be just a huge PHP file full of spagetti code just spalshed around, sometimes with no apparent logic to it. Queries, processing, HTML...everything crammed in one file...
The most amazing thing was that this code base somehow managed to function in production for more than 5 years and people actualy used it...
Imagine the reaction I got from the client the moment I said we should burn it to the ground and rebuild the whole thing from scratch...
Good thing my boss trusted me and backed me up (he is a great guy by the way) and we never had to go along with that Frankenstein monster... -
I didn’t turn down a dev freelance project when the client decided against going with best practices because the solution I offered was a well-established design pattern but created a need for a financial management change she didn’t like. I stupidly built what she asked for. It worked fine in the 3rd party vendor test environment but failed on production. After hours of analysis of code to ensure no changes happened to my source during test->prod deployment, and the vendor denying they had config differences between them, and the client refusing to pay, all I could do was abandon the project.2
-
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 -
I am driven by my love for this industry and wanting to do everything to the best of my ability.
Being a strong advocate for quality i am always on the look put for new practices and finding new ways to improve my code.
If you consider a project 'done' then you gave up on it.1 -
My man said "What should I return if the True/False field is left blank?"
WHY WOULD A BOOLEAN BE ANYTHING OTHER THAN TRUE OR FALSE???!!!
I'm gonna have an aneurysm. I shouldn't be educating people on best practices for something that's already been written about time and time again. RESTful philosophy has been documented so much, and all it takes is a quick google search, but noooo! I have to take time out of my day as if I'm a regular old stakeholder to explain that I want the exact thing that I sent in an email two weeks ago. Amazing.17 -
Had a new co-worker I was responsible for training. I am several years his junior, but he is working with a new language/framework I'm fluent in. Day 4 into training, he walks into my cubicle, sidles up next to me, I look up at him, he farts loudly, then (without seeming to realize what he's done) he proceeds to launch into a long-winded question about coding best practices.
If this were an isolated incident, I'd have written it off, but the dude did it again when he came to my desk and asked me to open a jar of pickles for him, and many times over during casual conversation.1 -
Me: The dev agency didn’t follow best practices. They only implemented front end validation on the form. The form submits to a public endpoint, so bots don’t have to go through our site to submit the form. That’s why our database is still filled with $1 donation transactions. I honestly recommend telling this to the dev agency and request that you not be charged for the extra work needed to do this right.
Manager: They charge $95/hr and they’re billing for 8 hours already.
[Aside: The agency’s task was to implement a $10 minimum on the form, do some text changes, and deploy.]
Me: I would expect work to be done according to accepted best practices. It’s really a half done job.
Manager: But they were very helpful when we had that payment processing emergency. They stayed late to help us. We shouldn’t push this in case we need their help again. Can you do the backend validation? [We are in US and agency is in Lithuania.]
Me: 🤬😩😑🤐[To myself: This wouldn’t have happened if the fundraising team hadn’t panicked and would only wait until I came back from my one day of PTO.]1 -
!dev
EA can suck my inches. Fucking deprecated and greedy business practices. Now I'm fucking told me to play the game later, because "too many computers have accessed this accounts version of a shitty game that crashed my pc 3 times. Please try again later."
Stupid cunts, have you ever heard of a vpn? Or maybe listened to the people complaining about this issue since 2017. On top of that you apparently rendered geforce now useless with this error.
Good fucking lord, I haven't even mentioned origin, the big pile of shit, yet. The download functionality you praise like God's cum doesn't even hold out half an hour before it freezes, together while the whole UI. You cannot like your games with a steam account, so you'd have to pay for a game you already own.
...And a whole lot of other issues I probably haven't encountered yet.
It's more lucrative to sell this shitty account and then buy the fucking game I want to play on steam. I have a feeling that would be about the best option I have.
I'm tired of this shit, I just wanna play some games with friends. I did not play to be spit on my face by some corporate wankers1 -
isRant = true
Am I the only one who has to deal with an annoying coworker who has the urge to take every conversation into an argument to prove himself smarter than everyone in the team? A person who has to contradict every time with rest of the people just to prove himself smarter and different.
Gets so annoying sometimes that I stop answering him right away.
To add to this he is the person from our dev team who has to prove that he codes the fastest and want to get it deployed ASAP. Does not follows best practices and disregards and design patterns. Would argue for hours on his code with the peer reviewer.
Every one hates him for this and he things he is the dev rockstar2 -
i think formal education is the best, because it teaches good practices and all the whys of programming. it requires a lot of discipline and effort, but actually sitting down and studying theory is good for us12
-
4 months into the journey at an ambitious streaming startup we, a team of 10 engineers (primarily full stack), sets up a tiny and performant express.js api setup.
We document plans for improving the maintainability, including outlining specific practices (not very different from general node best practices) that need to be followed for all new development.
Enter a new engineering manager (dedicated backend manager), henceforth referred to as S, with a rat face and brain that belongs in a rat hole.
Week 1:
S: let's push this new feature out asap
Dev: it'll need a couple of weeks to get done right
S: let's push out a functional version tomorrow, and revamp in the next iteration
Dev: ... (long pause) there's documented practices specifically directing against this
S: can you not do it by tomorrow
Dev: not if it needs to be done right
S: all you need to do is.. (simplifies changes spanning 5 modules into a 3 line summary)
Dev: yes, (outlines how each changes chains into the others, and how to keep the development maintainable for atleast a few months)
S: (interrupts every sentence saying "yes dev, I understand, yes yes")
Dev: could you please tell me how you expect me to connect (outlines two modules that would fail unless developed as standalone services)
S: Yes dev, I understand, yes yes. I don't have much experience with Node.js, so I can't tell you that.
Dev:
<_<
>_>
O_<
Our.. entire.. backend.. stack.. is.. Node. (Months of motivation, cultivated through hard work over late nights, dies inside)
I need a J and some sleep.6 -
We were documenting a feature which has system wide affect. We’ll be delivering it to customer on Monday.
So we’ve asked the colleague who worked on it about how it works and asked few follow up questions that arise during the documenting. All were good.
Comes Friday when I had a question as some things didn’t add up and I checked the source. To my surprise the very core operation colleague explained us works in exact opposite way. I kid you not in %50 percent of the documentation we ramble about why it was implemented this way since it is faster/safer best practices bla bla.
Moreover we’ve already had some exchange with the customer and we informed(misinformed) them about this core operation...
Also changing the behavior will reduce the overall speed as it will cause extra branchings. Other option is to rewrite the documentation and inform(re-convince) the customer. If it was me I wouldn’t trust us anymore but we’ll see.
I really don’t know what to say about this fucker why would you say something if you’re not sure of it or why the fuck you didn’t confirm in the last 3 weeks....
Anyway we have a meeting on Monday morning to discuss how to proceed, that’s gonna be fun!1 -
Working on codebase of a 20+ year old system that the company I work for bought five years ago and in that time there’s been no refactoring, no security updates, no attempt to create automated testing (there is none), new features have just been built on the codebase with no regard for quality and it’s just spun into the horror cesspool that it is today.
I joined one year ago and I’m slowly refactoring the codebase and updating it to get it to a more modern codebase, cleaner code, faster load times and creating a ton of dev documentation so the devs in India can start getting into best practices and start producing quality code.4 -
Comment on a code review:
How does this relate to the task?
Me:
Most of the changes have nothing to do with the task, but half of the code & build system was either wrong, broken or not following best practices. This particular change is because something was broken.3 -
We rewrote the whole thing, except for iFraming some old pages in. We had to, the system was fucking awful and couldn't cope with any of the new mission critical requirements.
Client didn't understand the scope. Our project leader somehow snuck it in and we worked on it for months. We were sure we'd be kicked off the whole project... Somehow things didn't crash and burn. How it didn't blow up defies rational thought and the laws of physics. The new system worked, the client was happy, and boss made a lot of money.
Lead dev worked weekends for what feels like an eternity, it really was his baby and no one else on our company could have done it. It's where I finally learned how to do things the proper way; DDD, unit testing and TDD, architecture, building strong components in front-end, you name it. Before that I had a great nose for code smells and how not to do stuff, but now I got to see a proper system for the first time. It was glorious.
Then lead dev left and the system degraded quite a bit because new team didn't keep to the architectural patterns or general best practices. But we had a good run.1 -
I am usually lurking in here since I never really worked as a Software Developer, but until I start going to the University, I thought I might also find myself a job in Software Development.
Well... I don't know where to start.
Someone in here heard of JBoss? Me neither... we're using it... It is a Framework to deploy fortified Java Web Applications. My first day was very chaotic and was dedicated to get this fucking shit to work. I got JBoss 7.5 from my colleagues and started deploying the hello world program...
So. Many. Things. Gone. Wrong...
After like 5 hours of troubleshooting, I had to install/setup a new wrapper with my own batch scripts, install SPECIFICALLY jdk 1.7_17 (anything else won't work) and downgrade JBoss to 7.2.
Yeah that's the first thing. Let's continue about JBoss. Version 7.2 uh? What's the newest one though? Oh it's now known as WildFly... huh... FUCKING HELL, THE NEWEST ONE IS VERSION 10.1??? AND EVEN 10.1 IS 1 YEAR OLD? WHAT THE FUCKING FUCKK AAAAAAHH...
So yeah, after that, without any expectation, I had a look at our codebase. Unit tests huh? I couldn't find a single self written one to test the applications functions... I asked my fellow devs and they told me that "it is too time consuming and we have to focus on new features, the QM Team will just manually test the application". Ever heard this bullshit? A big fat ass codebase with shittons of customers and not a single unit test...
So last but not least, since it is a web application, it also got a site. Y'know RichFaces? The deprecated front end library for Java Webpages? Where you got like 150 Tables per page everyone with a random id everytime you reload? Yeah I don't think I have to explain that to you guys...
So now YOU tell me? Is this a place to be 😂😂😂6 -
When writing code that has to be evaluated by a college prof, redirect all the best practices to /dev/null2
-
Somebody asked me for help on their thesis, gave them advise, how they should do it, what are the best practices on implementing things...
I asked the today how are they doing? They answered, we paid someone to do it, we can't do it...
Damn are they even studying and doing their daily programming practice???4 -
For the people working on small startups:
How do you keep updated on best practices, engineering, and all that when you're 24/7 focused on the startup (implementing, testing, fixing stuff)?
I feel like I love doing things the best way, but we always go with the "do fast, break fast" and it always feels like a mess because the engineering is done after a really small MVP is done (and after a long time usually).
I was hoping to be able to at least do a really small engineering part *before* starting anything new, but CEO always wants stuff done *yesterday*. But for this I think I should be reading more, and playing around with new patterns and all that, so at least I know out of the box what would be a good thing to start with and not having to change the entire project/script from scratch.4 -
Just because it's popular, doesn't mean it's good.
An overengineered solution can usually be simplified without breaking anything important. An oversimplified solution can rarely be upgraded without major breaking changes.
Not everything needs to follow the "best practices" - if it's not a part of the core functionality, diminishing returns often kick in quite fast.2 -
I was once handed a very old PHP project that I had to make some changes to. I thought it would be a piece of cake. But the moment I looked at the code, I knew it wasn't going to be easy. It was so poorly written, it took me hours to figure out what was actually going on. Now these were the times when I was already quite disturbed mentally and emotionally, and this shitty PHP code only made it worse. At one point, I was like, fuck this shit I'm gonna quit this job.
Thankfully, the client soon emailed that the requested changes weren't needed anymore.
I personally have nothing against PHP. I have created some amazing stuff with it. But it's the programmers that don't follow the best practices that piss me off. I mean, how fucking hard can it be to write clean code. You might save your time today by taking shortcuts but you'll make life hell for the people who might have to maintain your code in the future. -
I love Android development, but I HATE make individual strings for each word in my apps. It's so tedious! There's gotta be a better way than telling myself, "Oh crap you better be a good boy and use Google's 'best practices' and not hardcode all your strings. Who knows you might make this app translatable in Portuguese someday and it'll be easy then!". I HATE it!!2
-
Sysadmin's nemesis: a DBA. Especially an oracle DBA. There's no other kind of tech worker I've seen who's more opposed to best practices.
How about for devs?4 -
I do not think that GoTo is bad. It can lead to hellish code but if you don't misuse it - it can be extremely useful.6
-
My senior colleague recently said "Don't go around asking for best practices, it's a waste of time! Just try stuff until it works and commit it".
We were talking about writing code in a new language.1 -
Just because you have no idea what you are doing does not make you an artist.
So can we please treat software development as engineering?
I get that in software there are a lot of unknowns and you won't always find best practices, especially if you want to be a pioneer on the bleeding edge.
Yet maybe that issue you were trying to solve with your hackish -- I mean artfully -- solution is a lack of understanding of the basic technology?
If you want to do art, try poetry.3 -
Hi all! I am an iOS developer and I've been using Firebase as my 'online storage'. I want to be a more full stack dev and creating my own APIs. I want to start to learn Java or .NET APIs (uuh an iOS dev speaking about .NET :P). Anyone that can recommend good courses or tutorials and best practices? I have been learning Java and .NET in college, but that is about 4 years sgo.. Thanks in advance!11
-
Does someone know a site where i can get professional level help/guides/tutorials with system architecture questions? Like best practices for implementing common features? (Something like stackoverflow but where u actually get an answer instead of insults)
Googling for tutorials gives very basic/demo level results that might not be great for scale/security in prod env6 -
So i informed my intent to leave the job in few months in pursuit of learning something new in tech. Boss is trying to convince me to not leave and said i should consider learning it after work hours. In fact, in his opinion, the best way to learn is just going ahead and learning it while doing it in the project ( which usually has impossible deadline and fugly code by colleagues who never thinks of good coding practices when typing their shit ).
Well guess what boss, I don't want to just live a life staring at monitor all day. I don't want to kill my eyes either.
Following his advise and not quitting would mean living a slave life.
I have other plans actually. Like being self employed and traveling the world which would be impossible if i follow the routine life.
Fun fact: he claimed he made an AI car back in 90s!
He also thinks I can't sense BS!😏2 -
I had this amazing boss. He had 25 years of experience in the sector covered by our software, an ERP. He knew how to be a programmer, a boss, a sales manager, a support person.
I learned most of the best practices from him: do not shout in the office, it makes impossible to work. Don't hide something to your coworkers, nobody was trusting him. Be clear with your clients, his subtle mind tricks pissed off a lot of clients. Your client needs to see an economic advantage in your offers, trying to sell gold priced shit is not a good way to stay in the market. The list could go on and on and on.
I learned what happens when you do everything in the wrong way, and I will never forget.3 -
Do, as many of you fellow developers, I have a social pressure to do something with my life over the weekends, instead of geeking out or reading new best practices ..
So I finally decided to go see the Irish Curragh regatta organized by the Irish in Barcelona association ..
Nice and sunny Barcelona, besides the sea ..
Came home after three hours with a sun stroke, lobster face, completely blind despite the sun glasses, and with a terrible dizziness .. on my bike!
And they wonder why we spend time with our computers at home ..1 -
I really need to get out of this clusterfuck of a mess I got into, A.K.A. our website projects. Now, it feels more and more like all these problems and issues we're having are all my fault.
Here's the thing: I had 0 experience on web development before I got this job. I started as an intern, expecting to learn all the right practices and techniques on building websites. Nope. What happened was I was thrown in this big project, responsible for almost every functionality that it was supposed to have.
A junior-level guy. Doing a huge project on his own. Hell, I'm probably even lower than a junior. But here I am, pigeonholed in this shittard. My boss even said to me, "you know more about the website than I do." Fucking hell. He's not even aware of the clusterfucks I've done on the codebase because, fuck, what did I know? I don't even get feedbacks about my code. I don't fucking know if I'm doing all of these shit right. I don't know if this function is supposed to be here, or if it's supposed to behave that way, and, shit, the concept of test-driven development is probably something my boss has never heard of before.
So right now, I'm a bit obsessed with web development best practices, and how to write clean, maintainable code. I would probably get more learning from going to meetups than I will ever have from this place.
This has been a very shitty start of my career. I hope a much better learning experience will be plentiful at my next job (if anyone's willing to hire me). It would be like starting all over again. Sorry for the long post. I would like to put this as a blog post, but it's probably not a good idea, specially since I'm looking for a new job. Thank God for devRant.2 -
I feel like being a doctor is like being a contract dev. You're thrown into a bad situation, you know the stack but you don't know the project history, best practices aren't followed, and the only dev is also the primary stakeholder who learned everything he knows from w3schools.2
-
* Start maintaining/upgrading new project at work
* Read book on best practices for the framework
* quickly realise all the "don't do this" parts of the examples in the book is EXACTLY how everything in the project is done
* cry self to sleep -
Have a question about my career:
So far my career out of uni has been like this:
8 months in first place working as C# .NET dev, creating native desktop apps for windows. job was shitty, was not getting any best practices skills so I left.
12 months in 2nd place working as android dev in a startup. was working all alone and had to rebuilt my app up to 5-6 times to learn best practices. startup didnt care about android app at all so I left and now doing just some small freelance work for them.
3 months in new startup as android dev.Today I was told that its decided to focus on iOS and do all marketing (also uplift of new design) only on iOS. basically for next 3-4 months they don't plan to do much on android side. they saw that I showed some interest in backend and now they are asking me to talk with two other senior guys about starting with some small tasks for me on backend.
Our backend is mainly using python. Also backend guys will be pretty busy for next few months because they will have to deliver many new features in next few upcoming months. I've talked with one of them and he said that this is a bad idea to force frontend to start working on backend. However I feel that he's sort of gateekeping and probably just doesn't want to help me with getting up to speed.
In my defense, my knowledge doesn't end with C# .NET desktop apps and native mobile apps for android.
I have hobbie projects (gameservers) where I worked on websites (php,html,css,javascript,mysql) and also was taking care of a java based gameserver which is hosted in a linux vps.
Also I've had a small hosting "company" where with available tools I've managed to automate VPS(virtual private server) ordering, web hosting ordering and domain ordering. Basically I owned a dedicated server and did everything using whmcs, cpanel and proxmox virtualization.
I trust myself in learning this backend stuff and doing whats required, however I learned everything by myself and I won't follow all of these best practices.
Should I accept more responsibility on backend or should I continue focusing on android?7 -
me :: Musician a, Developer b => a -> b
This week I reached the end of a long journey and the start of the next one!
When I signed up here I shared a rant about where I was at the time:
https://devrant.com/rants/1279742/...
This week I accepted a decent salaried role as the leading Data Scientist in a well funded nonprofit organisation based close to my home! I’ll be the only technical professional in software development or analytics in the organisation and it’s a new role, so I imagine there’ll be a reasonable degree of flexibility in figuring things out and implementing them.
Have spent the last week (and will continue until my start date) building up a realistic collection of best practices while brushing up on tools they use (as well as tools and methodologies that I plan to bring with me).
After over a decade working as a self employed freelance, I’m looking forward to them change and to building out on different areas of my skillset!1 -
So we have a confluence page all about best practices (there’s not even a lot in it) but when you check the repository, most rules are not followed 😭4
-
Rant portion:
Fuck me, there's not a ton of great resources for Lua. I have the book, and it's actually fucking incredible, but as soon as I have a question which I would usually Google, either it's a SO question that almost hits the mark (but absolutely does not answer my initial question) or a mailing list that DOES answer my question but holy FUCK it's difficult to read!
I 100% recommend the Lua book, though. It's remarkably helpful and covers just about every little detail of the language and it's corresponding c API, and even some of how Lua works behind the scenes.
Non-rant portion:
Finished up the first version of my library and now I'm binding it to Lua and this time around I'm using all the best practices including setting and checking metatables so that Lua can't segfault. It's going great, I properly learned about the Lua stack, and I feel good. Cross-platform double-buffered command line via a scripting language... What a way to enter 2020. Everything went so smooth that I got to 3am before I realized what even happened.1 -
Today a senior developer and a colleague started looking into my code reviews and started commenting best practices that were never used in the team.
Got my chance back at the senior developer's code when he raised a code review, which had none of the best practices.
Gave back a good set of review comments to him :D
Karma is a boomerang :)2 -
Anaconda. Quite fitting a name to something that fucks up python environments so thoroughly. Ironic too, given that it was meant to simplify. Anaconda doesn't give a shit about the python that came with the distro. And all packages installed with pip are only visible to anacondas python. Not a single note of caution during installation. Or a best practices guide for the newbie. Just chaos. Utter chaos. The price of being a noob had been paid.8
-
Hey. Can I borrow your ears for 5 minutes?
Since I've been out of school, I've often felt that even though I've learned how to code, the education went into a totally direction than the one I want to go. Of course a school can't teach you everything perfectly, but having almost no experience in frontend (mind you we learned the BAREST basics) just makes me feel entirely empty in that regard stepping up to a company. I've been pretty loaded during school, since I was struggling with a lot of things so I couldn't really find myself pursueing the direction of coding frontend apps being fun. I needed the little time I had to blow off steam playing games etc.
So the few things I know are all self taught, but I was never given a hand been shown best practices or solid advice where to look. Sitting down now at my pc trying to learn ReactJS for example feels incredibly draining and difficult, since we've never done JS in school ONCE. All the C# experience barely helps, since with ES6 being rolled out parallel to "normal" JS it's even harder to me to connect the lego blocks that is frontend development. Since many best practices are applied to ES6, I can barely even tell what previous practice they are replacing, making the entire picture even more spongy. In one sentence it's very overwhelming.
I've thought I'd apply maybe as a UX/UI Designer since I've got a great visual sense (confirmed countlessly by many, friends and strangers alike) maybe contributing to the frontend part that way. But as I was applying I've noticed that chances are seemingly pretty low to get accepted since it seems you've got zero reputition if you don't have a degree in Design.
It breaks me apart. I could probably apply as a frontend developer, but I am not sure if I would be happy doing that on the long run. Since just fucking around in Photoshop creating things seems like no effort and brings me joy, as compared to coding out lines for example.
I wanted to make money after school, improve on myself and my quality of life since I've drained that entirely for the sake of my education. Not spiral into another couple years just to eventually maybe get in the direction I want to.
On the flipside going into frontend dev with 0 skills, 0 experience, but being expected to have 2 years of hands on experience with the newest frameworks makes me feel empty and worthless.
I often hand out advice to other people on devRant, but this is the one time where I need some. Desperately. I feel shattered inside, getting out of bed in the morning has no incentive to me since I'll just feel like shit all day, watching YouTube to cheer me up temporarily, only to feel immense remorse not spending the day learning or improving on myself. Barely anything brings me joy. I don't wanna call myself depressive, but maybe I am just dodging the term and I am exactly that.
Thanks If you've read through this monstrosity of a rant/story. I'd be glad if you'd be so kind to give me a different take on my situation or a new perspective.
I am stepping on the spot and I am slowly dying inside because of it.
It dreads me to say it, but I need help.12 -
I am not sure if this is the best place for it, but let's go:
I am 35 years old and I always worked in the localization industry. I really love to code and I always developed small tools and scripts to help me and others at work, but now the company is going bad and it has the chance to close.
I was reckon if it would be a good idea to give development a try, besides my age and the lack of experience in a real development place. I am not even sure if I use programming good practices, as I always developed by myself.
Do you have any opinion about it?
Thank you so much!4 -
What's the best hyperlocal weather app for Android?
https://techcrunch.com/2020/03/...
The one I use is disappearing... Thanks to Apple...
I own Apple and it's been a huge money maker but.... I use Android and now I think they should be sued for monopolistic practices....4 -
To the web devs here: What resources would you recommend for catching up a little to the web development state of the art? The last time I have designed anything HTML5/CSS3 were just being introduced. So my knowledge is pretty outdated, but I'm note starting from zero. I'm looking for some best practices and something framework-agnostic would be nice. Unless you say “Dude it's 2017, nobody even boils water without using *.js”, of course.9
-
The senior engineer on my project is working with Kafka. Completely unaware of the possibility of rescheduling failed messages with a fixed delay he was trying to put a Thread.sleep somewhere in the consumer to emulate the feature.
Sometime i would like to burst out crying because I feel like I'm the only one who care about writing good code and using best practices.
The more in the industry the more I realise titles don't matters. Everything is shit, everything...5 -
Hey, you, my new colleague, you are annoying. I have reviewed your PR and left about 50 comments on your mess. I even explained to you why half of your code is shit in a very polite way. I have explained why you have to rewrite that and even how to do that in the best way possible. Result? Half of the code is gone, it works as before but without the overhead.
Now you're annoying cuz I have to go again on conventions and best practices. I totally understand that you've been doing it differently and throwing buzz words at me won't help. Just stop and do it as it's needed in this project, don't reinvent the wheel only because you can.
You know what? Fuck it! I'll approve all your PRs, anyway I am leaving soon. There is no benefit for me to teach you stuff. You're one of those guys that I voted against in interviewing process. But guess what? My manager decided to hire you anyway! Ha! I rarely vote NO and you were a one of those...
Your confidence doesn't impress me. That works on people that have no clue on what you are doing. Your just average at best, not a superstar.
Fuck it, you're on your own now!1 -
"I would say my biggest pet peeve related to the industry would be people focusing on technology instead of design, standards instead of users, and validation rather than innovation. Web standards and best practices are noble goals, but all too often in our community people forget they are a means to an end, not the end itself." - Jeff Croft
-
<<prev. #wk235 advices>>
~ Study the Error log deeply, Google each line if needed. Don't give up.
~ Learn by doing. Don't just read/watch.
~ Practice breaking down the problem statement first in different components and hierarchies. Don't jump into coding right away.
~ Write some, review some. Don't put off review for later.
~ Even if you don't exactly follow the best security practices - always ensure that your program is safe for use. Especially for user-inputs, etc, pay attention.
~ Never distribute code with passwords/keys written in it.
~ Don't hard code stuff, use Config file, environment variables, etc.
~ Try to automate repetitive stuff like build and deploy etc
~ Save and backup you code.
~ No one knows everything, also, today's knowledge gets outdated tomorrow. Continuous learning is synonymous with this field.
<<next #wk235 advices>>1 -
Load tests:
I'm used to do load tests in Visual Studio where it gives which line is exactly your bottleneck. But now I'm using VS Code (visual studio requires enterprise license for load tests :\ no longer have one)
Anyways long story short, what are the best practices for load tests? For me what I'm testing is how much can a given hardware specs handle and when test fails I go back and check if code can be optimized, is this the correct way to do this?7 -
Every once in a while I start to question my development principles and start to read articles, especially software philosophical, and try to improve my practices, aswell as find several trade-offs between my own best practices.