Details
Joined devRant on 4/2/2018
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
-
A young guy I work with burst into tears today, I had no idea what happened so I tried to comfort him and ask what was up.
It appears his main client had gone nuts with him because they wanted him to make an internet toolbar (think Ask.com) and he politely informed them toolbars doesn't really exist anymore and it wouldn't work on things like modern browsers or mobile devices.
Being given a polite but honest opinion was obviously something the client wasn't used to and knowing the guy was a young and fairly inexperienced, they started throwing very personal insults and asking him exactly what he knows about things (a lot more than them).
So being the big, bold, handsome senior developer I am, I immediately phoned the client back and told them to either come speak to me face-to-face and apologise to him in person or we'd terminate there contract with immediate effect. They're coming down tomorrow...
So part my rant, part a rant on behalf of a young developer who did nothing wrong and was treated like shit, I think we've all been there.
We'll see how this goes! Who the hell wants a toolbar anyway?!401 -
What devrant taught me:
Everyone hates java
Everyone hates php
Everyone hates spaces
Everyone hates tabs
Everyone hates vim
Everyone hates windows
Everyone hates linux
Everyone hates clients
Everyone hates PMs
Everyone hates every language they're not working with
Everyone loves devrant 😊36 -
Ever heard of event-based programming? Nope? Well, here we are.
This is a software design pattern that revolves around controlling and defining state and behaviour. It has a temporal component (the code can rewind to a previous point in time), and is perfectly suited for writing state machines.
I think I could use some peer-review on this idea.
Here's the original spec for a full language: https://gist.github.com/voodooattac...
(which I found to be completely unnecessary, since I just implemented this pattern in plain TypeScript with no extra dependencies. See attached image for how TS code looks like).
The fact that it transcends language barriers if implemented as a library instead of a full language means less complexity in the face of adaptation.
Moving on, I was reviewing the idea again today when I discovered an amazing fact: because this is based on gene expression, and since DNA is recombinant, any state machine code built using this pattern is also recombinant[1]. Meaning you can mix and match condition bodies (as you would mix complete genes) in any program and it would exhibit the functionality you picked or added.
You can literally add behaviour from a program (for example, an NPC) to another by copying and pasting new code from a file to another. Assuming there aren't any conflicts in variable names between the two, and that the variables (for example `state.health` and `state.mood`) mean the same thing to both programs.
If you combine two unrelated programs (a server and a desktop application, for example) then assuming there are no variables clashing, your new program will work as a desktop application and as a server at the same time.
I plan to publish the TypeScript reference implementation/library to npm and GitHub once it has all basic functionality, along with an article describing this and how it all works.
I wish I had a good academic background now, because I think this is worthy of a spec/research paper. Unfortunately, I don't have any connections in academia. (If you're interested in writing a paper about this, please let me know)
Edit: here's the current preliminary code: https://gist.github.com/voodooattac...
***
[1] https://en.wikipedia.org/wiki/...29 -
The hardest part of being a programmer wasn't the education, the self-teaching, the sleepless nights or the hours of agony trying to fix a bug that would break a program I'd spend weeks working on.
It's the realization that my family, friends, coworkers...nobody understands at all what I do. They don't know of my failures or my triumphs. I can't talk about it with them and it's becoming more apparent to them that it's taking up more of my life. And in a way it feels like a part of myself has just become, well, alien.
Best way I can describe it is, it's like the "Tears in the Rain" scene from Blade Runner.
I'm stuck, I think. I know I've been shutting out people from my life more and more as I don't want to "deal" with people's issues, but I don't think it's been good. I'm can verify that I'm depressed beyond my normal levels.
It's time for me to make an appointment with a therapist.
Remember that you are loved here, and appreciated. Don't let anyone tell you different.
Stay strong.25 -
My favorite part about programming is when I spend 30 minutes debugging my code only to realize I spelled "submit" as "sumbit"...6
-
*joins devrant*
*Deletes fb and all social stuff*
*all friends use facebook messenger*
*quietly installs again*
(First world problems)20 -
How to beat jet lag with style:
When your normal sleep schedule was so broken it became completely normal in the different timezone.
I used to sleep from 5am to 1pm in my country. With a -7 time difference this became 10pm to 6am.
Should I be happy?9 -
A group of wolves is called a pack.
A group of crows is called a murder.
A group of developers is called a merge conflict.28 -
Almost all the company uses git, I even took a training about git and how does it integrate with internal tools.
In my team they use mercurial.
fml. -
Bash scripts. If it can't be done in a bash script; you haven't looked at enough stack overflow pages.3
-
I don't.
This image sums it up pretty much (even though it was made for university).
Source: https://onetwentyseven.blog/2017/...2 -
I'm basically an introvert. I've lived most of my childhood with my mother alone with few friends and the ones I had betreyed me real hard at some point. So how come that I'm now founding a startup, speaking in front of a big audience at meetups and have a nearly 60/40 work/social life?
At some point I decided to be more social. Making that decision alone had a huge impact. It took several years though, to implement this decision. Some day I cut off my draining social bounds and found energyzing relationships by simple doing what I wanted to do. I started to reach out and experiment with a lot of hobbies like bow casting and going to board games evenings. I made little steps. E.g bow casting is a sport where you don't necessarily interact with others within the sport, but you have the opportunity to interact about the sport.
A physiologist once told me the neat fact, that being an introvert is just an attribute that does not contradict the skill being socially involved. So it is possible with training and decisions to learn how to be more extroverted. For in introvert this is more exhausting and challanging, but definitely possible.
So today I balance my social life and work by visiting meetups, playing board games and all that stuff that makes me comfortable. There I get to know people with similar interests and similar struggle ;)
At some point the work was just not enough to be happy, I identified my missing social interactions as the root cause so I decided to change that.
On the other hand, don't think you have to be social. Don't think you have to care about everything others expect you to care about. It's bullshit. Don't care about that. Rather ask yourself what you want for yourself. Certainly a social life is part of that, but you alone decide how this will look like. E.g. After I decided hey I just don't give a fuck if you like cuddling your cat and when it's birthday is, several months or years later I started to be interested in these things from my own, not because some dippshit society construct expects me to care about it.
So to wrap up:
Introvert is an attribute, social life is a skill.
Deciding for yourself and giving a fuck about others is key.
It takes a shit load of time. But it works. -
I dont work weekends ever. And I dont bring my work home with me, once I finish for the day, Im finished. Even if there is a deadline looming or something is due for a weekend release. I will only work when Im in the office. And I wont work extra unpaid hours. All that does is create unrealistic expectations from your employer and clients. I did it once and learned that there was no point and I could have just gone home and it would have been fine. Im never doing it again.3
-
I go to techno hardcore parties. The volume is so loud that usually nobody speaks to you, but you can take pictures in a very crowded environment, so when you put them on Facebook people think you are a social person, while in the reality you talk more with your computer than with humans. :D11