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 - "productive programmer"
-
You know what you sound like when you say that "I want to be a programmer but this code is offensive so remove it"? It's like saying that "I want to be a surgeon but I don't like blood, so remove the blood right now."
I personally don't really like blood a whole lot, especially when it comes out of the bodies of other people. I don't really want to become a surgeon, but let's say that I would. "Teacher, I don't like blood, I want to become a surgeon but I hate blood!!! MAKE ALL PATIENTS STOP BLEEDING NOW!!!"
To which my teacher surgeon would of course respond: "Well how about you don't become a surgeon then, because humans that are cut open do bleed, and there's nothing we can do about it."
Same thing with code. You know why code is written? To be a useful tool, for people to become more productive by running the thing (unlike the average SJW). And normal people, you know how much they care about the code? They only care for it as much as for it to be able to run properly. And the ones that do look in the source code either want to improve its functionality or check whether it's actually something decent, secure, safe to run etc etc. People don't normally look at code for the sake of getting offended by something.
But the formulation used in the code, does it even matter? Jerk, it's a term that's used in physics. Does it refer to your despised white cis males whacking off? Of course it doesn't, it's a term to describe change in acceleration. Masters and slaves in code, does it refer to slavery? Most certainly it doesn't. So why bother?6 -
A woman can make 4 babies with 4 different fathers in 9 months, right?
Someone decided we need a "rubber band programmer" who bounces around from project to project as needed, and that gets to be me.
So I work on 4 projects, with 3 programming languages, 4 frameworks, and with users in 4 complicated industries, none of which I have experience with.
And my boss wonders why I'm not as productive as everyone who has worked on 1 project for 5 years.9 -
Why is it so important to some people to claim that "HTML and CSS are not programming languages"? I get it, you're a REAL programmer working with arrays, maybe tuples, objects and possibly direct memory management. Who the fuck has a right to call themselves a programmer for writing some brain dead markup or poorly designed selectors, right? Who fucking cares for semantic tags or nested selectors?
Just think for a few seconds about when you were taking your first baby steps to becoming the GOD ROCKING MEMORY HANDLER THAT WRITES _REAL_ CODE that you are today, and how good it felt to be able to create something that appeared on your screen. It felt pretty awesome, yeah?
Now imagine if someone much more experienced than you told you "You're not a real programmer, that is not real programming. You should see what I do, I do real programming".
I think you get it. Why spend your energy spreading bad vibes when you could spend it on something more productive. Like reading up on the new CSS4 specs ;)18 -
When I was in college OOP was emerging. A lot of the professors were against teaching it as the core. Some younger professors were adamant about it, and also Java fanatics. So after the bell rang, they'd sometimes teach people that wanted to learn it. I stayed after and the professor said that object oriented programming treated things like reality.
My first thought to this was hold up, modeling reality is hard and complicated, why would you want to add that to your programming that's utter madness.
Then he started with a ball example and how some balls in reality are blue, and they can have a bounce action we can express with a method.
My first thought was that this seems a very niche example. It has very little to do with any problems I have yet solved and I felt thinking about it this way would complicate my programs rather than make them simpler.
I looked around the at remnants of my classmates and saw several sitting forward, their eyes lit up and I felt like I was in a cult meeting where the head is trying to make everyone enamored of their personality. Except he wasn't selling himself, he was selling an idea.
I patiently waited it out, wanting there to be something of value in the after the bell lesson. Something I could use to better my own programming ability. It never came.
This same professor would tell us all to read and buy gang of four it would change our lives. It was an expensive hard cover book with a ribbon attached for a bookmark. It was made to look important. I didn't have much money in college but I gave it a shot I bought the book. I remember wrinkling my nose often, reading at it. Feeling like I was still being sold something. But where was the proof. It was all an argument from authority and I didn't think the argument was very good.
I left college thinking the whole thing was silly and would surely go away with time. And then it grew, and grew. It started to be impossible to avoid it. So I'd just use it when I had to and that became more and more often.
I began to doubt myself. Perhaps I was wrong, surely all these people using and loving this paradigm could not be wrong. I took on a 3 year project to dive deep into OOP later in my career. I was already intimately aware of OOP having to have done so much of it. But I caught up on all the latest ideas and practiced them for a the first year. I thought if OOP is so good I should be able to be more productive in years 2 and 3.
It was the most miserable I had ever been as a programmer. Everything took forever to do. There was boilerplate code everywhere. You didn't so much solve problems as stuff abstract ideas that had nothing to do with the problem everywhere and THEN code the actual part of the code that does a task. Even though I was working with an interpreted language they had added a need to compile, for dependency injection. What's next taking the benefit of dynamic typing and forcing typing into it? Oh I see they managed to do that too. At this point why not just use C or C++. It's going to do everything you wanted if you add compiling and typing and do it way faster at run time.
I talked to the client extensively about everything. We both agreed the project was untenable. We moved everything over another 3 years. His business is doing better than ever before now by several metrics. And I can be productive again. My self doubt was over. OOP is a complicated mess that drags down the software industry, little better than snake oil and full of empty promises. Unfortunately it is all some people know.
Now there is a functional movement, a data oriented movement, and things are looking a little brighter. However, no one seems to care for procedural. Functional and procedural are not that different. Functional just tries to put more constraints on the developer. Data oriented is also a lot more sensible, and again pretty close to procedural a lot of the time. It's just odd to me this need to separate from procedural at all. Procedural was very honest. If you're a bad programmer you make bad code. If you're a good programmer you make good code. It seems a lot of this was meant to enforce bad programmers to make good code. I'll tell you what I think though. I think that has never worked. It's just hidden it away in some abstraction and made identifying it harder. Much like the code methodologies themselves do to the code.
Now I'm left with a choice, keep my own business going to work on what I love, shift gears and do what I hate for more money, or pivot careers entirely. I decided after all this to go into data science because what you all are doing to the software industry sickens me. And that's my story. It's one that makes a lot of people defensive or even passive aggressive, to those people I say, try more things. At least then you can be less defensive about your opinion.53 -
Fucking cant solve productivity problem. Since I was working as programmer, about 8-9 years experience, constant complaints about my productivity and some jobs even fired me for this. Only one job did not complain and I worked in it longest time but still I was worrying very often about my productivity. It is fucking annoying. Why others are productive and I am not. How the fuck to find biggest bottlenecks to know which to work on.
I know I am not knowing technology perfectly, and from time to time I get stuck and so I ask other people help, or somehow manage to find solution myself but it takes more time. But dont know if that is the biggest issue. Should I intecify my learning? I am regularly studying, and working with symfony about 2 years, so I think I should know enough to be productive even with those strugles from time to time. But maybe they are too often?
I have listened book "deep work" and basic thing I think from this is - to minimize disctractions and learn to focus very well. But to minimize like in this book, I should work alone in my room. And even then I would like each hour for few minutes to read some new or smth, which this book says is bad, but a lot of people do that and they somehow get away with it. Plus if I work alone in my room, my social skills might get worse, and we all need social skills, even programmers.
I so envy to others who know how to be productive. I would hate if the only thing to be more productive is to reduce quality of the code, make more bugs. THats fucking cheating system.20 -
"You're a programmer, dammit!" Damian Conway
I'm at a seminar given by Conway right now, so much stuff I wish I had heard before about how to be more productive and how to stay "in the zone" while programming without distractions. If any of you ever gets a chance of following one of his seminars (he also wrote books), it's highly recommended.4 -
I think the biggest poison in AI products is trying to replace the expert instead of making them more productive. And I feel like the reason is "managers don't want to make employee's lives better".
Code tools could be quite good for boilerplate, documentation and tests, but it's trying to be a full programmer. They could highlight areas of concern in medical images instead of trying to fully classify them.5 -
This started as an update to my cover story for my Linked In profile, but as I got into a groove writing it, it turned into something more, but I’m not really sure what exactly. It maybe gets a little preachy towards the end so I’m not sure if I want to use it on LI but I figure it might be appreciated here:
In my IT career of nearly 20 years, I have worked on a very wide range of projects. I have worked on everything from mobile apps (both Adroid and iOS) to eCommerce to document management to CMS. I have such a broad technical background that if I am unfamiliar with any technology, there is a very good chance I can pick it up and run with it in a very short timespan.
If you think of the value that team members add to the team as a whole in mathematical terms, you have adders and you have subtractors. I am neither. I am a multiplier. I enjoy coaching, leading and architecture, but I don’t ever want to get out of the code entirely.
For the last 9 years, I have functioned as a technical team lead on a variety of highly successful and highly productive teams. As far as team leads go, I tend to be a bit more hands on. Generally, I manage to actively develop code about 25% of the time to keep my skills sharp and have a clear understanding of my team’s codebase.
Beyond that I also like to review as much of the code coming into the codebase as practical. I do this for 3 reasons. I do this because as a team lead, I am ultimately the one responsible for the quality and stability of the codebase. This also allows me to keep a finger on the pulse of the team, so that I have a better idea of who is struggling and who is outperforming. Finally, I recognize that my way may not necessarily be the best way to do something and I am perfectly willing to admit the same. I have learned just as much if not more by reviewing the work of others than having someone else review my own.
It has been said that if you find a job you love, you’ll never work a day in your life. This describes my relationship with software development perfectly. I have known that I would be writing software in some capacity for a living since I wrote my first “hello world” program in BASIC in the third grade.
I don’t like the term programmer because it has a sense of impersonality to it. I tolerate the title Software Developer, because it’s the industry standard. Personally, I prefer Software Craftsman to any other current vernacular for those that sling code for a living.
All too often is our work compiled into binary form, both literally and figuratively. Our users take for granted the fact that an app “just works”, without thinking about the proper use of layers of abstraction and separation of concerns, Gang of Four design patterns or why an abstract class was used instead of an interface. Take a look at any mediocre app’s review distribution in the App Store. You will inevitably see an inverse bell curve. Lot’s of 4’s and 5’s and lots of (but hopefully not as many) 1’s and not much in the middle. This leads one to believe that even given the subjective nature of a 5 star scale, users still look at things in terms of either “this app works for me” or “this one doesn’t”. It’s all still 1’s and 0’s.
Even as a contributor to many open source projects myself, I’ll be the first to admit that have never sat down and cracked open the Spring Framework to truly appreciate the work that has been poured into it. Yet, when I’m in backend mode, I’m working with Spring nearly every single day.
The moniker Software Craftsman helps to convey the fact that I put my heart and soul into every line of code that I or a member of my team write. An API contract isn’t just well designed or not. Some are better designed than others. Some are better documented than others. Despite the fact that the end result of our work is literally just a bunch of 1’s and 0’s, computer science is not an exact science at all. Anyone who has ever taken 200 lines of Java code and reduced it to less than 50 lines of reactive Kotlin, anyone who has ever hit that Utopia of 100% unit test coverage in a class, or anyone who can actually read that 2-line Perl implementation of the RSA algorithm understands this simple truth. Software development is an art form. I am a Software Craftsman.
#wk171 -
Today, my manager received a brand new Macbook pro with all its cool features while I am still stuck using an old Macbook pro (mid 2012 model). I always complained him about performance issues and all he did was to approve an OS upgrade (to Sierra). How does that even enable me to be productive? I am already running applications at the peak of the machine limits. Sometimes, the JVM crashes and other time Node.js runs out of heap space.
The manager is not a programmer. All he really does is attend online meetings, track and report to management, and write emails. Ideally, he would need a Mac Air or perhaps a Windows machine. I still wonder how did the company management allowed this. He is simply misusing his privileges as a manager and I can do nothing about it.1 -
I'm living a daily drama with my own head lately. I was hired like two and a half months ago as a junior programmer and it is my first real job, in addition to 2 internships (the last one was in the advertising agency, and after a month I started to search a new job and warned my boss that I wanted to quit, because it was kind of a painful job and I was not happy at all because I was not working with programming).
The thing is that I do not know what they expected from me in this current job, and I still can not say. Am I being enough? Am I a disappointment? Everyone there is so experienced and good at what they do, and I was just used to being "the guy" where I studied that it was some sort of shock when I realized that I had to get way better even for a junior job. I do not feel productive as I wanted and sometimes I feel like I'm a total disaster and I'm not made to work with the only thing I could say "I'm made for this".
I might be overreacting this, but I just wanted to say this somewhere and I'm thankful I have devRant now. I could talk to my superiors or my boss about this, but I'm so used to get there and focus on my tasks that I'm always forgetting.3 -
One time, we picked up a Xamarin project and both Android and iOS teams had to pick a developer to handle it. After talking over it with my iOS bro, I decided that I hate C# far too much to start a project on this, even though I wanted a new experience, so iOS bro took over it. I got handed another iOS project in the meantime. iOS bro decides to take a free week from work after like a month or so of working on that project.
GUESS WHO DECIDED TO COME OVER AND WORK WITH US THAT WEEK? THE OWNERS OF THE PROJECT (they were handling the API). Guess who had to drop all projects at once and work for a whole week on a project he had no idea about in a programming language he only had a remote idea about? THIS GUY.
So, aside from the fact that I had no idea what I was doing, I also had the pressure of the owners working right next to me (they were cool people, but it's still a stress). That week really raised my stress level through the roof, as I doubted myself everyday that I would be able to be productive on that project. I got myself a free week too after that.
But yeah, this experience really made me doubt my skills as a programmer, as Xamarin was supposed to be just a cross-platform way of developing an app.
All in all, I've never had to work on that project again... but it was still an "I can't fucking believe it" moment when, one month-ish later, the project was to be scrapped and reprogrammed on ye olde Swift.1 -
The taboo of not finishing.
(As I prefaced to many posts I made, don't take this too seriously)
It is very normal in the programming world to get recommended to finish projects.
But I was wondering "what if you don't?".
Of course, we can agree that having little patience or persistence is not good for any endeavor.
But what if this recurrent focus on finishing is also bad?
Granted, I have started dozens of things and only finished one or two of them and none have become popular.
So there's not a lot of support to back my take.
But I definitely learned a lot from these projects. And I definitely had a lot of fun at some points.
In fact, I think if I had switched more often early on I would have been less miserable, and maybe I would have learned more by the virtue of not getting stuck with some project.
Of course this applies as long as you stay within the same field; it doesn't help learning gardening one day but karate the following.
But even then, there are so many hobbies in life that the chance of finding the one that you love and are the best at are very slim. So switching out of the least pleasant ones might bring you to a favorite one.
But, let's go back to programming.
Here, people recommend finishing things as means to become profitable. If you want to live as a gamedev, then you need to sell games, and to do that, you need to finish games.
That is understandable.
But if gamedev isn't your main profit, why is finishing games a requirement?
What's the point of publishing a game that you know looks like shit?
Why? Why should you put time and energy, pain and stress, all the way through the end only to finish or even publish a game that you can feel ashamed of how awful it looks? (because most 1st games look awful).
Why would you ever want to finish something that looks horrible?
First tries are always terrible, and that's fine, nothing wrong with that.
What's wrong is this sheepthought that you should publish to the public every turd that you can produce in your early learning stages.
I've been a programmer for almost 8 years now. I'm not the best out there, but I consider myself ok.
And considering I had some pretty deep depression pits thanks to this mentality, here's my advice to folk having stress with unfinished projects: don't give a single fuck.
If a side project has become stressful, shelf that shit, maybe tell someone about your issues with it. But don't care much about it.
In fact, if you manage to finish a project but it has costed you a great deal of stress, maybe that should be the shameful thing.
Life is too short to waste it considering suicide because you're not a prolific programmer.
And i would argue that iterating 100 times on different things is far more productive (and fun) than fetting stuck or spending shitloads of time on the first one, even if you don't finish any of them.2 -
I saw a video on tiktok a couple days ago that had a pretty interesting opinion. The guy said that we should stop creating programming languages and stick to only a couple.
His main point was because with all these different programming languages, there is different syntaxes the programmer has to learn. Even some of the universal syntaxes are different in some languages. For example, in Rust, to print something you use “println!(...);”
He said this is counter productive because in a majority of other programming languages, the ! Means negation. He also said something about Golang also having some of those syntax problems but I can’t remember exactly.
His point was that if we stuck to a single syntax, then we could spend more time doing productive stuff and less time relearning how to do stuff with different syntax. For example, in mathematics all symbols have pretty much the same meaning across the field. An equals sign will always mean the same thing.
What do u guys think? I thought it was an interesting opinion and I think I agree to some degree . I’ll post the link to the video if I find it again23 -
Previusly on programming....how can the programmer be more efficient and avoid redundant work and be productive
in todays episode.....how can the programmer spend his whole life writing presentation pages -
In my case, the only way to stay productive is to task switch often. Suffering of adhd, I get bored of researching / developing a specific solution rather quickly, and then have a huge issue staying focused.
That's also why I can't imagine being a programmer. Being a sysadmin, however, is great! Dealing with many different tickets a day.