AboutMiddle-aged dude working tech support for storage/cloud company but interested in pivoting to software development
SkillsInterested in .NET (F#/C#), Ocaml, and other languages with functional aspects
Joined devRant on 7/24/2019
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
I was browsing websites in search of a nice digital camera because my wife saw one but it's long since been discontinued. So I found this one article about a few current ones. I open it, it shows the typical GDPR consent request about cookies with a prominent button 'ACCEPT ALL,' and a less prominent button 'MANAGE PREFERENCES.'
But tapping the button 'MANAGE PREFERENCES' did not show any preferences to manage! WHAT THE HECK? There was only a list of 'partners' whose cookies I need to accept. A long list. A very long list. I stopped counting at 500.
ARE YOU FUCKING KIDDING ME? WHAT REASON COULD A WEBSITE POSSIBLY HAVE TO REQUIRE COOKIE CONSENT FOR MORE THAN 500 PARTNERS?
Fucking capitalist internet.4
The other day I received the pictured e-mail from StackOverflow.
WHAT THE HELL ARE YOU TELLING ME?4
While browsing I just found the following website titled The Mediocre Programmer, and thought it might be an interesting read for some people on dR that are grappling with self-doubt, impostor syndrome, or similar issues:
Fucking gratuitous interface changes:
In Zoom, when you leave a meeting, now it has a read 'Leave' button, and when you click on it, a second 'Leave meeting' button pops up which you have to click as well.
In Outlook, there used to be a search bar above the list of e-mails. Recently I noticed it wasn't there anymore, and it took me a while before I found it… they moved it to the title bar!
WTF are these people thinking? Seems like they change interfaces just for the sake of changing something.5
Everyone and their dog is asking for advice on dR so let me share what's currently on my mind…
Many people probably think it's a blast from the past but I want to install fvwm on Linux (or FreeBSD) and see if it's up to scratch for use as a daily driver, and if so, how much configuration it requires until it gets there. There are a couple projects such as https://github.com/dustincys/hifvwm and https://www.box-look.org/p/1018275 that make it look worthwhile.
I'm predominantly worried whether it would work correctly with a multi-monitor setup (including dynamically adapting to plugging and unplugging monitors). Does anyone have any recent experience with fvwm?
Why is it that virtually all new languages in the last 25 years or so have a C-like syntax?
- Java wanted to sort-of knock off C++.
- C# wanted to be Java but on Microsoft's proprietary stack instead of SUN's (now Oracle's).
- Several other languages such as Vala, Scala, Swift, etc. do only careful evolution, seemingly so as to not alienate the devs used to previous C-like languages.
Now we're slowly arriving at the meat of this rant: back when I started university, the first semester programming lecture used Scheme, and provided a fine introduction to (functional) programming. Scheme, like other variants of Lisp, is a fine language, very flexible, code is data, data is code, but you get somewhat lost in a sea of parentheses, probably worse than the C-like languages' salad of curly braces. But it was a refreshing change from the likes of C, C++, and Java in terms of approach.
But the real enlightenment came when I read through Okasaki's paper on purely functional data structures. The author uses Standard ML in the paper, and after the initial shock (because it's different than most everything else I had seen), and getting used to the notation, I loved the crisp clarity it brings with almost no ceremony at all!
After looking around a bit, I found that nobody seems to use SML anymore, but there are viable alternatives, depending on your taste:
- Pragmatic programmers can use OCaml, which has immutability by default, and tries to guide the programmer to a functional programming mindset, but can accommodate imperative constructs easily when necessary.
- F# was born as OCaml on .NET but has now evolved into its own great thing with many upsides and very few downsides; I recommend every C# developer should give it a try.
- Somewhat more extreme is Haskell, with its ideology of pure functions and lazy evaluation that makes introducing side effects, I/O, and other imperative constructs rather a pain in the arse, and not quite my piece of cake, but learning it can still help you be a better programmer in whatever language you use on a day-to-day basis.
Obviously these curly-braces languages will still be needed for a long time coming, legacy systems and all—just look at COBOL—, but my point stands.7
Procrastinating because I have no manager/colleagues looking at my monitors…
So far not much has changed in my office, only a colleague or three are working from home for two weeks as a precautionary measure after returning from a Coronavirus hot-spot.
For myself I see little danger: I commute by car, the office is so far Coronavirus-free, and I still have to go to shops to get food etc.
I'm more comfortable working in the office, as the environment is set up better, and I can chat with colleagues more easily when needed. If I should need to WFH for extended periods, I'll need another monitor (currently I have one nice 27" BenQ monitor on my desk at home), and a mechanical keyboard (the one I bought is in the office).
FML, I almost forgot we have croissants every Friday morning… managed to scavenge one of the last ones left.4
My pet peeve with LinkedIn: messages from recruiters on another continent offering me a job because I live in the same country as the job offer. Just because the Netherlands are a small country doesn't mean I will take any job anywhere in the country! Open Google Maps and check the driving distance, then you'll find that the job is 150km away from where I live, and it would take me 90 minutes to get there in good conditions, not to mention rush-hour traffic! Thanks but no thanks!4
I pretty much had my spam under control for quite a while, receiving only a few spam mails per week. However, in the last month or so the volume has picked up significantly, and now I just saw 16 new spam mails in the last two hours! Fookin shyte…
Of course I suppose they don't realize that at least Gmail is quite effective in filtering that crap right into the Spam folder so I don't have to deal with it. Come on, I know e-mail is cheap but mails that are never read might as well not have been sent in the first place…2
Who the hell is Dhruv, and why is Twitter suggesting I follow them? That jumping elephant drives me nuts!3
I was browsing the jobs secion on SO, and came across a position looking for a 'Python Software Engineer.' WHAAAAA? PYTHON IS A FUCKING SCRIPTING LANGUAGE! SINCE WHEN IS IT SUITABLE FOR SOFTWARE ENGINEERING?24
Just searched for an e-mail in Outlook on my work computer, and expected the last e-mail I had sent to be at the top of the results list. But it wasn't there…
Then I saw that above the dates in the results list, Outlook now has a category 'Top Results'. WHAT THE FUCK IS THIS NOW? FACEBOOK OR SOMETHING?
Fucking hell, my phone (Nexus 5X) just died: I was browsing the web in Chrome, it suddenly hung, after a few seconds it turned off, and will not turn on at all now, it's just completely dead. FUCK!
I was going to pick up a used printer this afternoon, now I may not be able to because I can't contact the person to get their address. And if I could, I don't have Maps to find the way. FUCK!
On top of that, yesterday I got a call from the bank that my credit card was used in a fraudulent transaction so they had to cancel it, and send out a new one, which I will not have until Friday or Monday next. FUCK!6
First-world problem: my blueberries are rotten! I rescued enough for my daily portion of quark, and threw the rest out. WHY CAN'T THE SUPERMARKETS HAVE BLUEBERRIES THAT DON'T ROT IN LESS THAN A WEEK?9
Recruiters with no clue (a recurring theme it seems).
Got an e-mail this morning via LinkedIn proposing a position in Zurich (Switzerland) doing customization of an application according to business needs, configuration of interfaces, gathering of requirements, 2nd level support etc.
DID YOU READ ANYTHING MY LINKEDIN SAYS? I work in storage support (doing mostly troubleshooting of FC/iSCSI issues between storage and hosts), and live in Amsterdam, and while I would like to pivot to a SW dev job, this seems to be way over my grade of experience, plus I have no desire to go living in Switzerland.