It’s the most boring thing of the technical side of the job especially at the more senior levels because it’s so mindnumbingly simple, uses a significant proportion of development time and is usually what ends up having to be redone if there are small changes in things like input or output interfaces (i.e. adding, removing or changing data fields) which is why it’s probably one of the main elements in making maintaining and updating code already in Production a far less pleasant side of job than the actual creation of the application/system is.
- 0 Posts
- 141 Comments
Aceticon@lemmy.worldto
Programmer Humor@programming.dev•Oopsie, Visual Studio License expired, so the build server stopped working
2·1 year agoHow much would that be in Libraries Of Congress if written down?
I disagree: as a Bachus of Programming I have successfully managed to at the same time both be a God of Programming AND having no clue what’s going on.
(The real joke behind the joke is that today I’m doing Shader programming so that’s quite close to reality and I could definitelly do with large amounts of wine or at least beer).
Here too the Schrödinger’s equations apply: a programmer’s state during coding is a superposition of both of these states until actually trying to run the code, at which point it collapses into one of the two states.
I’m starting to like this AI thing…
Aceticon@lemmy.worldto
Programming@programming.dev•Why Don’t Tech Companies Pay Their Engineers to Stay?
11·1 year agoAbove a certain level of seniority (in the sense of real breadth and depth of experience rather than merely high count of work years) one’s increased productivity is mainly in making others more productive.
You can only be so productive at making code, but you can certainly make others more productive with better design of the software, better software architecture, properly designed (for productivity, bug reduction and future extensibility) libraries, adequate and suitably adjusted software development processes for the specifics of the business for which the software is being made, proper technical and requirements analysis well before time has been wasted in coding, mentorship, use of experience to foresee future needs and potential pitfalls at all levels (from requirements all the way through systems design and down to code making), and so on.
Don’t pay for that and then be surprised of just how much work turns out to have been wasted in doing the wrong things, how much trouble people have with integration, how many “unexpected” things delay the deliveries, how fast your code base ages and how brittle it seems, how often whole applications and systems have to be rewritten, how much the software made mismatches the needs of the users, how mistrusting and even adversarial the developer-user relationship ends up being and so on.
From the outside it’s actually pretty easy to deduce (and also from having known people on the inside) how plenty of Tech companies (Google being a prime example) haven’t learned the lesson that there are more forms of value in the software development process than merely “works 14h/day, is young and intelligent (but clearly not wise)”
Aceticon@lemmy.worldto
Programmer Humor@lemmy.ml•My debugging experience today: Quantum Debugging
47·1 year agoSound like a critical race condition or bad memory access (this latter only in languages with pointers).
Since it’s HTTP(S) and judging by the average developer experience in the domain of multi-threading I’ve seen even for people doing stuff that naturally tends to involve multiple threads (such as networked access by multiple simultaneous clients), my bet is the former.
PS: Yeah, I know it’s a joke, but I made the serious point anyways because it might be useful for somebody.
I suspect indirectly both variants come from the same source or maybe even it’s the La Haine that’s indirectly the source for my variant (though I learned this joke a long time ago, possibly before 1995).
By the way, that’s excellent film intro.
Reminds me of the joke about the guy falling from the top of the Empire State Building who, half way down, was heard saying: “Well, so far, so good”
Who needs integration testing when we have users who will do it for us?!
The amount of effort I do to try and avoid using double parentesis is trully herculean.
I think that stuff is the product of a completionist/perfectionist mindset - as one is writting, important details/context related to the main train of thought pop-up in one’s mind and as one is writting those, important details/context related to the other details/context pop-up in one’s mind (and the tendency is to keep going down the rabbit hole of details/context on details/context).
You get this very noticeably with people who during a conversation go out on a tangent and often even end up losing the train of thought of the main conversation (a tendecy I definitelly have) since one doesn’t get a chance to go back and re-read, reorganise and correct during a spoken conversation.
Personally I don’t think it’s an actual quality (sorry to all upvoters) as it indicates a disorganised mind. It is however the kind of thing one overcomes with experience and I bet Mr Torvalds himself is mostly beyond it by now.
It was about as prescient as “640k is enough for everybody”, but in a good way.
Aceticon@lemmy.worldto
Linux@lemmy.ml•What is the most duct-tape thing you've done to Linux?
12·1 year agoI got an Orange Pi 5 Plus to play with smallish AIs (because it has an NPU) and I normally access it remotely, so I have to know its IP address to do it.
In order to easilly know the IP address of it, I’ve wired a little 128x64 monochrome OLED screen to it (Orange PIs, like Raspberry PIs have a pin connector giving access to GPIO and interfaces like I2C, Serial and SPI) which talks via I2C.
Turns out those interfactes aren’t active in Linux by default (I.e. no /dev/i2c-x), so I figured out that I had to add a kernel overlay to activate that specific interface (unlike with the Raspberry PI whose Linux version has a neat program for doing it, in the Orange Pi you have to know how the low level details of activating those things), which I did.
To actually render characters on that screen I went with an ARM Linux port of a graphics library for those screens I used before with Arduino, called u8g2)
Then I made a program in C that just scans all network interfaces and prints their names and IP addresses on that screen, and installed it as a Cron job running once a minute.
Now, as it turns out when you shutdown your Linux on that board, if you don’t disconnect it from power there is actually still power flowing through the pin connector to any devices you wire there, so after shutdown my screen would remain ON and showing the last thing I had put there, but because the OS was down it would naturally not get updated.
So the last thing I did was another small C program which just sends to that screen the command for it to go into power saving mode, shutting it down. This program was then installed as a Systemd Service to run when Linux is shutting down.
The result is now that there is a little screen hanging from the box were I put this board with Linux which lists its IP addresses and the info is updated if it connects other interfaces or reconnects and gets a new IP address. Curiously I’ve actually been using that feature because it’s genuinely useful, not just a funny little project.
“Will horrors never cease?!”
Wine and Proton manage to be better at both forward and backward compatibility with Windows than actual Windows.
I’ve switched for over a month now and did had problems with 2 games out of the 6 I tried so far (all of which were both games installed via Lutris and I found solutions to fix them both).
Funnily enough one of the games I got via Steam which did not work before in Windows now works in Linux. Further, I was running Windows 7 (yeah, I know it was a bad idea security wise), so there are AAA games whose minimum Windows version is 10 which I now can play in Linux that I couldn’t before in the Windows I was using.
All in all it has been great and I have no intention whatsoever to go back to Windows.
Even if there are games that won’t work in Linux, there are so many good games out there that can entertain me for hundreds of hours that I won’t miss the handful I cannot get to run in Linux.
Aceticon@lemmy.worldto
Linux@lemmy.ml•Linux Desktop reaches New All time high. 4.45%(+0.4) 📈🐧
91·1 year agoThe whole business model of Apple is to force a hardware upgrade cycle on you and force all your devices to be in that same ecosystem.
I mean, I can see the advantages of it on the short term, but on the longer term having stuff that keeps on working even as always even in older hardware (or you just install new hardware under it and it just recognizes it and keeps on working) is a massive benefit versus a $1500+ bill every
twofive years and having to migrate your stuff.
Aceticon@lemmy.worldto
Linux@lemmy.ml•Linux Desktop reaches New All time high. 4.45%(+0.4) 📈🐧
14·1 year agoHaving done the transition some months ago, there is still some stupid shit one has to deal with (especially, but not only, for games NOT from Steam) at times, more than in Windows, but it’s all so much better than it was before and by now quite close to the Gaming experience in Windows.
Then on top of that there are all the the longer term peace of mind things versus Windows: upgrading your Linux costs zero, changing your hardware won’t invalidate your Linux “OEM License” (plus it will probably just boot up as normal with if you just move your SSD to a whole new machine rather than throw you into driver nightmare), games that work in today’s Linux will keep on working in tomorrow’s and so on - this is actually massive advantage of Linux versus Windows which is seldom talked about: more often than not, hardware migration with Linux is to just move your SSD to a whole new machine, with all the stuff just the way you like it and all you files, and it just boots with and keeps on working.
(PS: Especially relevant for gamers who have to upgrade due to the increasing demands on hardware from the gaming side of things even though the hardware is fine for everything else they do in that machine, and who would rather that all those other things they’ve installed and kept on using rather than uninstall after “finishing the game”, just carry on configured just the way they like it and working just the way they’ve always did, even when they do upgrade the hardware because of games. People who are fine with hardware dedicated to gaming and with replacing the whole thing - hardware and software - for newer games, just get XBoxes or similar consoles, not PCs)
Linux not only saves you from enshittification, keeps control in your hands and preserves your privacy, it’s also a reliable and functional long term OS layer for your hardware that doesn’t force hardware upgrades on you.
Aceticon@lemmy.worldto
Linux@lemmy.ml•Linux Desktop reaches New All time high. 4.45%(+0.4) 📈🐧
30·1 year agoAt this rate the Year Of Linux On The Desktop will be 2033!!!

Yeah, runs on Linux fine (my experience was running it from Steam), looks good and is defintelly a shooter.
Turns out it’s not really my kind of game because it’s a succession of set-pieces (a sequence of fully fledged 3D areas were player progression is mostly linear) but for those more into the shooting and less into exploring or building angles it should be good fun as it’s definitely all about the shooting your way through enemy strongpoints (not really about defending from enemy waves).