Details
-
AboutFormerly known as "Homuncoolus" Dev & part time computer science student
-
SkillsJava, Angular, JavaScript, TypeScript, Python C, Flutter, C#, Unity
-
LocationZurich, CH
Joined devRant on 4/5/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
-
Me: Optimize a sort & match method in backend because users complain it's a bit slow.
Coworker: These algorithms are both O(n), so they're identical *closes PR*
Me: *start zoom call* "Heeeeeeeeeey Iiiiiiiiiii wouuuuuuuld liiiiiiiiike toooooo diiiiiisscuuuuus thaaaaaaaat puuuuuuulllll reeeeeequuuueeest yooooouuuuu cloooooossseeeed"
Coworker: "wtf are you doing, why are you talking so slow"
Me: "No matter whether I talk fast or slow, the information still reaches you in O(n) time, so why are you complaining"
I fucking hate it when people misunderstand the purpose of (or abuse) big O notation. It's an estimate of how an algorithm SCALES once the set increases in size, in which case you leave out both less significant terms and constant factors.
But those terms and factors are important when you're talking about the DIRECT PERFORMANCE of the algorithm on fixed-size sets, instead of SCALING to larger sets.
1n and 10n are both O(n), but 10x performance on a job that used to take 10 minutes is still significant.19 -
Someone on a C++ learning and help discord wanted to know why the following was causing issues.
char * get_some_data() {
char buffer[1000];
init_buffer(&buffer[0]);
return &buffer[0];
}
I told them they were returning a pointer to a stack allocated memory region. They were confused, didn't know what I was talking about.
I pointed them to two pretty decently written and succinct articles, the first about stack vs. heap, and the second describing the theory of ownership and lifetimes. I instructed to give them a read, and to try to understand them as best as possible, and to ping me with any questions. Then I promised to explain their exact issue.
Silence for maybe five minutes. They disregard the articles, post other code saying "maybe it's because of this...". I quickly pointed them back at their original code (the above) and said this is 100% an issue you're facing. "Have you read the articles?"
"Nope" they said, "I just skimmed through them, can you tell me what's wrong with my code?"
Someone else chimed in and said "you need to just use malloc()." In a C++ room, no less.
I said "@OtherGuy please don't blindly instruct people to allocate memory on the heap if they do not understand what the heap is. They need to understand the concepts and the problems before learning how C++ approaches the solution."
I was quickly PM'd by one of the server's mods and told that I was being unhelpful and that I needed to reconsider my tone.
Fuck this industry. I'm getting so sick of it.26 -
10 most useful API for developers
1-Google Maps
2-CoinGecko
3-Mail Chimp
4-Open Weather
5-Instagram
6-Yelp
7-Bit.ly
8-Souncloud
9-Dropbox
10-Okta24 -
Stolen but so funny:
QA Tester walks into a bar:
He orders a beer.
He orders 3 beers.
He orders 2976412836 beers.
He orders 0 beers.
He orders -1 beer.
He orders q beers.
He orders nothing.
Él ordena una cerveza.
Il commande une bière.
He orders a deer.
He tries to leave without paying.
He starts ordering a beer, then throws himself through the window half way through.
He orders a beer, gets his receipt, then tries to go back.
He orders a beer, goes to the door of the bar, throws a handful of cookies into the street, then goes back to the bar to see if the barmaid still recognizes him.
He orders a beer, and watches very carefully while the barmaid puts his order into the till to make sure nothing in his request got lost along the way.
He starts ordering a beer, and tries to talk the barmaid into handing over her personal details.
He orders a beer, sneaks into the back, turns off the power to the till, and waits to see how the barmaid reacts, and what she says to him.
He orders a beer while calling in thousands of robots to order a beer at exactly the same time.4 -
A question about Angular components. Can a component become a member of another component?
Let' s say I have a sensorReading component that looks like these green boxes. I only want 4 of them in app-component(default one). How can I create 4 of these inside app-component and access their properties and methods from app-component.ts script?
I can create 4 of them in app-component.html with ngFor but how can I access elements of these sensorReading components I created with ngFor? Members are sensorType, value and unit as you can see.16 -
It's the kind of evening where I'll look into niche programming languages but never make anything with them.
Send language suggestions12 -
My plan to become rich:
1. Create a library / framework that's really just an easy wrapper for other libraries.
2. Write a bunch of books / courses online teaching this "new" library
3. Market it to overpowered but impressionable PM's who'd fall for anything with the word "inovative" in it6 -
1 on 1 meetings with manager throughout the year
Manager: You're doing really well! Keep it up!
Me: Cool, thanks!
1 on 1 meetings with my manager a month or two ago
Manager: You're still killing it! I'd really like to see you challenge the status quo since you're the newest on the team. I think we could benefit from fresh perspective.
Me: Ok, cool, I'm starting to feel pretty comfortable so I'll do that.
Me: *starts challenging process, team structure, and company norms in meetings*
Manager: *confused pikachu face*
1 on 1 meetings now, right before performance management
Manager: I really need you to start picking up more important work. You're not performing well relative to others at your level, and I won't be able to represent you well during performance management.
Me: 😐10 -
Not a rant but sort of a rant.
Getting REAL fucking tired of the corporate rat race.
Thought Bubble ...
{If I quit this stupid job I could do freelance sites}
Then I realized that I have no idea what skill set it takes to be a freelance developer. I only know my one little corner. Once I commit my code it goes off down the assembly line for others to worry about testing, deployment, hosting, security and other things I have no idea about.
So tell me freelancers, is the grass greener? What additonal skills do you have to have the us enterprise folks would have no idea about?
Or are you making huge bucks where you overcharge for Wix sites that do not suck?9 -
HOLY FUCK I never thought that using async websockets in Django 3.x will be THAT much pain in the ass...
Also my next contribution will be their docs for sure, the examples are so fucking bad (linters are crying and begging me to kill them)3 -
1. You don't code to add a feature or whatever. You do it to solve Users' problems. It's a User-centric system.
2. You read more code than you write. So help yourself and write code intended to be read.
3. If people don't know you did something, you did nothing!
4. Never answer a call at 3 am if you're not paid to be on night call-duty. You'll become the guy who answers at 3 am.
5. Remember the big difference between you and me is that I failed to do stuff more times than you have tried to do.
6. When you start shaving the yak, stop!10 -
Don't waste your time - they said.
Use Spring - the good ol' framework - they said
It's not slow - they said
me: ignores them, builds a custom jetty-based webserver with the same functionality Spring+tomcat can offer (mappings, routings, etc).
My app: boots up completely in <300ms, while Spring tutorials say a hello-world app takes 3+ seconds to spin-up http://websystique.com/spring-boot/...
me: already set for deployment in lambda. I bet I can tune it up even further with lazy-loading if I really have to...
Moral of the story: sometimes bare-bones solution is a better choice: more performant, more extendable, more testable, more lightweight.
That, dear folks, is the classic LESS IS MORE :)12 -
So just recently my school blocked the following for unknown reasons websites
Github
Gitlab
Amazons aws
stack exchange
Bitbucket
Heroku
The hacker news
DuckDuckGo
The Debian package repositories yea all of em
And all domains that end in .io
Now some of you out there are probably just saying "well just use a vpn" the answer to that is I can't the only device I have a locked down school iPad can't install apps cannot delete apps cannot change vpn or proxy setting's I cannot use Safari private tab they have google safe search restricted to "on" they even have "safari restricted mode which lets safari choose what it wants to block" and even when I'm on my home wifi it's s still blocked as they use Cisco security connector THIS IS HELL
Also this is my first post :)30 -
I wonder..
With all this master/slave/blacklist/whatever.. do people realize this is in a way increasing racism? In a sense that we are again focusing on races, differences, historical mistakes, etc. That we are turning all this and similar fuss into a social joke instead of moving on and living our lives normally. That companies are using the difference of races as a way to spread their names. Sometimes as political measures
Are you folks really okay with all of this? Don't you feel being used/abused again? Do you ever consider that racism is just a mean of getting more attention and more $$ for the companies?
I am not pro-racism, but I find it difficult to accept those who suffer/have suffered from it are okay with all this show.14 -
Disclaimer: I can't 'officially' verify this.
I've been using Firefox as main browser with about 5 addons for added privacy for ages now. When googles (fucking) reCaptcha takes more than a few minutes on Firefox (about 90 percent of the time, I'm estimating), I switch to Chromium (with the same amount of (similar) privacy addons) so I can go on with my stuff.
Now, I recently thought 'why not try to do user agent spoofing on Firefox to see if reCaptcha would start working 'normally'?
So, I installed a user agent spoofing addon on Firefox/Chromium, results:
Without spoofing:
Firefox reCaptcha success rate: 10 percent approx. (mostly 2+ minutes)
Chromium: 90 percent. (mostly instant)
With spoofing:
Firefox: 90 percent approx.
Chromium: 10-20 percent approx.
Again, I can't prove any of this yet but mother of fucking god, whenever using Chromium or spoofing Chromium on Firefox the succession rate skyrockets.
Google, what the fuck are you up to?12 -
I actually just wanted to say - what a great time it is to be a developer.
C# has stolen so many good features now that it's pretty awesome.
JavaScript and typescript are really fun to work with.
I really love angular.
Docker is great!
I can setup pipelines and deploy an angular app for free and really easily with github-pages.
I can use linux inside windows.
I can use cloud providers to do all sorts for really cheap.
I can plug my cable-free oculus quest VR headset into my laptop and build a game pretty easily with unity (thanks to all the great oculus helper prefabs).
I can use tesseract and data science technology inside my browser!!
And I can go to medium and udemy and learn all sorts of things.
Honestly...
Just saying.
I'm actually really loving being a developer right now.
And if I do have off day, I can rant on here!24 -
Terrence Andrew Davis
He was an unbelievably talented guy. It is sad how his mental illness made him an outsider and imagine things which weren't there, or maybe we are the blinded ones and he saw what code truly could create...
He will always stay in my synapses as "the greatest programmer who has ever lived".1 -
To be a Java (or other business popular language) developer
* Java 6, 8 and features up to 14
* SQL + nosql
* Caching
* Logging eg log4j2,
* Searching eg elastic stack
* Reactive
* Framework (at least 1, but hey, knowing 1 is lame..)
* Networking or at least base http knowledge
* Tomcat, jboss or other shit
* Aws, heroku, GCE or other SAAS/paas
* Rest, RPC, soap
* Business Hello World example
* Hexagonal Architecture
* TDD
* Ddd
* Cqrs
* 12 app factor
* Solid
* Patterns
* docket
* Kubernetes
* Microservices
* Security, oauth2
* concurrency
* AMPQ
* Cloud
* Eureka or consul as service Discovery
* Config server
* Hazel cast
*
*
* Endless story ...
Then we can start hello word app2 -
The source engine is interesting, because it has reached that stage of life where it's old enough to be remarkable-- in the sense that it could be called 'legacy', a sort of milestone in development practices and thinking, both in software, and design.
That said, a better look at it might be from the lense of *uses today*.
A lot of former source engine (SE) devs are now going to unity or unreal, I don't blame them.
But it's interesting to examine examples of games that haven't.
One such game is the freeware "No More Room In Hell". A couple online play throughs shows a wealth of well designed maps (and an even greater horde of shovelware maps, but hey, you take the good with the bad).
The age of the engine itself shows. Even in games like Left 4 Dead the engine's age can be seen. This, in some respects has been a drag, but also a blessing. Where other games could rely on their effects, shaders, and other tech, modders, map makers, and designers have had to rely on wit and creativity.
Enter "situated environments."
In an age where many people desire to travel, to go places, and have grown up doing the exact OPPOSITE, there is a great desire for variety of locations in games: not merely 'environmental' in the shallow sense of a 'theme' such as 'lava', 'tundra', etc. But in the sense of setting in general.
We want places that are both out of reach and yet familiar. Fire-fights happen in city streets. Apocalypses happen in neighborhoods where the skyline is both broken and at once something we know by sight. Open air markets, grocery stores, neighborhoods, all of these provide the back drops of popular games and series such as COD, Battlefield, The Last of Us, and yes, the example game, NMRIH.
I call this idea of 'familiar but out-of-reach level design', "situated environments", because familiarity with them, but *lack of real life experience* with them, on a day to day basis, allows people's expectations to fill in the gaps.
No one for example would argue the layouts of 7 Days To Die are familiar, but most of us don't spend all day in a junkyard or a high rise hotel.
So they *feel* familiar. Likewise with Skyrim, the villages and towns, both iconic and strange, our expectations formed by cultural inheritance, hollywood films, television shows, stories, childrens books, and yes, other games.
In a way, familiarity-without-real-in-person-experience is a shortcut for designers, one that lets them play with the player's head-space, the players subconscious idea of how a space and setting *should* work, what to *expect* out of the area, how to *operate* within the area. And the more it conforms to expectations, the more surprising an overdesigned element appears to be, rather than immersion breaking. A real life example of this is people's idea of chernobyl. When they discover the amusement park and ferris wheel they're blown away by the juxtaposition of the wasteland that surrounds them and the associations ('nostalgia' as it were) that such a carnival ride carries for many of us. It simultaneously *doesn't belong* and is yet all at once *perfectly situated in the environment*.
It is to say 'surreal', which is adjacent to the idea of *being real*, in terms of our "perception of what is and isn't plausible, if not possible."
This is at the heart of suspension of disbelief, because in essence, virtual worlds are a lie, like fiction, and good fiction violates expectations in order to tell us truths about reality. As part of our ability to differentiate bullshit from reality, there is to say an element in our bullshit detectors (doubtless evolved over many 10's of thousands of years), that is designed to not merely detect what is absurd in our limited experience, but to incorporate absurdity into everyday experience. In that sense part of our rationality is the acceptance of irrational experiences, learning from it, and discovering 'a proper place for each thing' in the "models of the world" we all carry around in our heads. Eventually we normalize the absurd, it becomes the new reality, and what remains unassimilated becomes superstition (real or otherwise), a figment, or an anomaly.
One of the best examples I've encountered is The Last of Us: Left Behind, a good chunk of which is spent in a mall. And they nailed the environment perfectly I would say.
Or for those who don't own a PS4, a more accessible example is a map in NMRIH aptly called "the museum", and few words better do it justice than to go play it yourself--that is, if you really want to know what I mean by a 'situated environment'.
What better way, during this pandemic, to get out of the news cycle and into your own head? Sometimes the best way to escape isn't outside, it's within.3 -
https://en.wikipedia.org/wiki/...
Is probably one of my all time favorite algorithms. It's really beautiful.
Whats your favorite or 'most beautiful' algorithm?10 -
Just wrote an article about how to code this with CSS. I'm new to writing stuff. Would love to hear what you guys think26
-
!rant
If you're into AI and easy breakdowns go check out:
http://www.gameaipro.com/
Dozens of really great ebooks on the subject, free of charge, no signup/signin required.5 -
Companies can't use free software?
Well, I just forced everyone to use Nextcloud instead of Dropbox and Google Drive. People did not like it as first but the quickly realized how good it was.
We also moved from skype, teams and slack to matrix.
I am glad that matrix-synapse is so easy to install nowadays!18