Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "easy"
A small story on digitalization
I had spent an hour in the bank with my dad, as he had to transfer some money. I couldn't resist myself & asked:
Dad, why don't we activate your internet banking?
''Why would I do that?'' He asked, ''Well, then you wont have to spend an hour here for things like transfer.
You can even do your shopping online. Everything will be so easy!
I was so excited about initiating him into the world of Net banking.
He asked, If I do that, I wont have to step out of the house?
''Yes, yes''! I said. I told him how even grocery can be delivered at door now and how amazon delivers everything!
His answer left me tongue-tied.
He said ''Since I entered this bank today, I have met four of my friends, I have chatted a while with the staff who know me very well by now.
Two years back I got sick, The store owner from whom I buy fruits, came to see me and sat by my bedside and cried.
When u r Mom fell down few days back while on her morning walk. Our local grocer saw her and immediately got his car to rush her home as he knows where I live.
Would I have that 'human' touch if everything became online?
I like to know the person that I'm dealing with and not just the 'seller'. It creates bonds. Relationships.
Does "online" deliver all this as well?
Technology isn't life #BeHuman
For those who are not getting the context, this things happen in India. It is truth not a fact.17
Manager: How come the intern does way more tickets than you?
Dev: Because you told me to only give him the easy ones since he either can’t do them otherwise or takes too long on the hard ones
Manager: Well how is he going to learn if we only give him easy ones?
Dev: That’s what I told you when you orig—
Manager: Assign him ALL of the hard tickets on your board immediately!
*Tickets closed per day drops significantly*
Manager: WHAT IS TAKING SO LONG ON THESE TICKETS!!!!!
Fuck the memes.
Fuck the framework battles.
Fuck the language battles.
Fuck the titles.
Anybody who has been in this field long enough knows that it doesn't matter if your linus fucking torvalds, there is no human who has lived or ever will live that simultaneously understands, knows, and remembers how to implement, in multiple languages, the following:
- jest mocks for complex React components (partial mocks, full mocks, no mocks at all!)
- token cancellation for asynchronous Tasks in C#
- fullstack CRUD, REST, and websocket communication (throw in gRPC for bonus points)
- database query optimization, seeding, and design
- nginx routing, https redirection
- build automation with full test coverage and environment consideration
- docker container versioning, restoration, and cleanup
- internationalization on both the front AND backends
- secret storage, security audits
- package management, maintenence, and deprecation reviews
- integrating with dozens of APIs
- fucking how to center a div
and that's a _comically_ incomplete list; barely scratches the surface of the full range of what a dev can encounter in a given day of writing software
have many of us probably done one or even all of these at different times? surely.
but does that mean we are supposed to draw that up at a moment's notice some cookie-cutter solution like a fucking robot and spit out an answer on a fax sheet?
recruiters, if you read this site (perhaps only the good ones do anyway so its wasted oxygen), just know that whoever you hire its literally the luck of the draw of how well they perform during the interview. sure, perhaps some perform better, but you can never know how good someone is until they literally start working at your org, so... have fun with that.
Oh and I almost forgot, again for you recruiters, on top of that list which you probably won't ever understand for the entirety of your lives, you can also add writing documentation, backup scripts, and orchestrating / administrating fucking JIRA or actually any somewhat technical dashboard like a CMS or website, because once again, the devs are the only truly competent ones - and i don't even mean in a technical sense, i mean in a HUMAN sense of GETTING SHIT DONE IN GENERAL.
There's literally 2 types of people in the world: those who sit around drawing flow charts and talking on the phone all day, and those WHO LITERALLY FUCKING BUILD THE WORLD
why don't i just run the whole fucking company at this point? you guys are "celebrating" that you made literally $5 dollars from a single customer and i'm just sitting here coding 12 hours a day like all is fine and well
i'm so ANGRY its always the same no matter where i go, non-technical people have just no clue, even when you implore them how long things take, they just nod and smile and say "we'll do it the MVP way". sure, fine, you can do that like 2 or 3 times, but not for 6 fucking months until you have a stack of "MVPs" that come toppling down like the garbage they are.
How do expect to keep the "momentum" of your customers and sales (I hope you can hear the hatred of each of these market words as I type them) if the entire system is glued together with ducktape because YOU wanted to expedite the feature by doing it the EASY way instead of the RIGHT way. god, just forget it, nobody is going to listen anyway, its like the 5th time a row in my life
we NEED tests!
we NEED to know our code coverage!
we NEED to design our system to handle large amounts of traffic!
we NEED detailed logging!
we NEED to start building an exception database!
BILBO BAGGINS! I'm not trying to hurt you! I'm trying to help you!
Don't really know what this rant was, I'm just raging and all over the place at the universe. I'm going to bed.20
Hey @Root! I know you won't have time to finish Ticket A before holiday vacation, so work on Ticket B instead.
I finished Ticket A in time. except for converting/fixing some horrible spaghetti monstrosity. More or less: "we overwrote this gem's middleware and now it calls back into our codebase under specific circumstances, and then calls the gem again, which calls the middleware again." Wtf? It's an atrocity against rationality.
The second day after vacation:
Hey @Root, drop Ticket B and work on Ticket C instead. Can you knock this out quick, like before friday? ... Uh, sure. It looks easy.
And in somewhere between 13 (now 5) minutes and two hours from now, I'm going to have a 1:1 with my boss to discuss the week. Having finished almost all of Ticket A won't matter because it's not a "recent priority" -- despite it being a priority before, and a lot of work. I've made no progress on Ticket B due to interruptions (and a total and complete lack of caring because I'm burned out and quite literally can no longer care), and no progress on ticket C because... it's all horribly broken and therefore not quick. I assigned it to Mr. Frontend, which I'll probably get chewed out for.
So, my 1:1 with bossmang today is going to be awful. And the worst part of all: I'm out of rum! Which means sobriety in the face of adversity! :<
but like, wtf. Just give me a ticket and let me work on it until it's done. Stop changing the damn priorities every other freaking day!17
I’m happiest about code I deleted.
Deleted code is easy to maintain, easy to read and it makes applications run faster.
Moreover applications take less disk space and are faster to download.
The more happy than about deleted code I’m about deleted software or destroyed computers.3
During a company wide status meeting where all product managers, architects and directors assemble:
Me: *A product architect leading a team of devs*
Directors: So are there any issues or risks you see in delivering the next build in target time for Client 1?
Me: There are too many changes in feature requirements. First they said we can use a shared NFS for storage. Now they are asking to switch over to SFTP pull mode.. blah blah..
Directors: Oh I see.. well we can support both solutions then.
Me: But the deadlin..
Directors: *ignores what I say* Will be a good marketing point for future.
Me: But there are too many regressions in integra..
Directors: *ignores what I say* We should also meet deadlines. That is the most important thing.
Me: Its not as easy as 1+1=2.. The team needs more time to..
Directors: *ignores what I say* Ok lets move on to the next point. What about Client 2?
here's a shoutout to 90% of websites today:
NO, I DO NOT WANT YOUR F*CKING NEWSLETTER! STOP ASKING!
NO, I DO NOT WANT YOUR F*CKING NOTIFICATION! STOP ASKING!
NO, I DO NOT WANT TO SHARE MY F*CKING LOCATION! STOP ASKING!
NO, I DO NOT WANT ANY F*CKING COOKIES! STOP ASKING!
website publishers ary whining about adblockers, but keep shoving so much shit down our throats that even a dozen browser addons can't make the web usable. the internet was such a great place once, where did we go wrong?
(rhetorical question. it's when we made access to the internet so easy, that every 100% tech-illiterate idiot could get online.)14
During my first-ever technical interview, the interviewer asked me "Do you know the FizzBuzz problem?"
"Uhh, not really." (I was just thinking ok this problem has a name, must be some algorithm problem)
"So the problem is basically to give you the numbers 1 to 100, if the number is divisible by 3, print 'Fizz', if divisible by 5, print 'Buzz', if divisible by 3 and 5, print 'FizzBuzz'. For other numbers just print out the number itself."
After hearing the problem, I felt so many ideas popping out of my stressed brain.
I thought for a bit and said "ok, so if the digit sum of a number is a multiple of 3, then the number is divisible by 3, and if the last digit is either 0 or 5, it's divisible by 5."
Then I started to code out my solution until the interviewer said "there's an easier solution. Can you think of it?"
This stressed me out even more.
I thought for a bit and said "well, starting from 3, keep a counter that records how many iterations are done after 3. When the counter hits 3, that number would be divisible by 3 for sure. Should I try this solution?"
The interviewer said "Sure." So I started again.
However, I struggled for about another 3min until I realized this solution is a lot harder to implement. The interviewer probably saw my struggle too.
This was the point where he stepped in and asked me "Ummmm there's an easy way of solving this. Have you heard of the MODULO OPERATOR?"
In sheer embarrassment, I finished the code in 30s.
Of course, there was no further question after this, and I felt the need to seriously reevaluate my intelligence afterwards.18
Weirdest co-worker... We'll not to be judgy, but I think our industry is sort of home of the weirdos, but.. there's a few over-the-top weirdees we've had at work.
First one that comes to mind was a guy that walked liked Mr. Burns, hands behind the back & chest out. He microwaved the same thing every single day for breakfast - crackers, sausage and cheese. 😖This guy would get to his tasks very slowly, wouldn't talk to anyone on our team, and would go missing from his desk a lot, sometimes for extended periods (2+ hours). He really struggled to catch on to easy tasks. He quit after a few months, thank god.
Another weirdo we had was a girl who just couldn't dress to save her soul. She would wear these ugly ass sneakers that had neon colors reminiscent of bowling shoes (neon orange and green) and would wear turtlenecks and floor length skirts that all the colors just clashed. Her outfits were uglier than your great grandma's. Myself, her and 2 other girls dressed up as the Dr. Seuss things for Halloween, but did h1, h2, etc. tags instead and she put like rope from curtains in her hair with like 10 little pony tails. Just like wtf. She would play her gameboy at lunch and not talk to anyone much. She was really bad at our job, a lot of clients complained. She would literally read a book, braid her bangs or nap at her desk. Needless to say, she was fired.6
Hi everyone, long time no see.
Today I want to tell you a story about Linux, and its acceptance on the desktop.
Long ago I found myself a girlfriend, a wonderful woman who is an engineer too but who couldn't be further from CS. For those in the know, she absolutely despises architects. She doesn't know the size units of computers, i.e. the multiples of the byte. Breaks cables on the regular, and so on. For all intents and purposes, she's a user. She has written some code for a college project before, but she is by no means a developer.
She has seen me using Linux quite passionately for the last year or so, and a few weeks ago she got so fed up with how Windows refused to work on both her computers (on one of them literally failing to run exe's, go figure), that she allowed me to reinstall both systems, with one of them being dualbooted Windows 10 + Linux.
The computer that runs Linux is not one she uses very often, but for gaming (The Sims) it's her platform to go. On it I installed Debian KDE, for the following reasons:
- It had to be stable as I didn't want another box to maintain.
- It had to be pretty OOTB, as first impressions are crucial.
- It had to be easy to use, given her skill level.
- It had to have a GUI abstraction to apt, the KDE team built Discover which looks gorgeous.
She had the following things to say about Linux, when she went to download The Sims from a torrent (I installed qBittorrent for her iirc).
"Linux is better, there's no need to download anything"
"Still figuring things out, but I'm liking it"
"I'm scared of using Windows again, it's so laggy"
"Linux works fine, I'm becoming a Linux user"
Which you can imagine, it filled me with pride. We've done it boys. We've built a superior system that even regular users can use, if the system is set up to be user-friendly.
There are a few gripes I still have, and pitfalls I want to address. There's still too many options, users can drown in the sheer amount of distro's to choose from. For us that's extremely important but they need to have a guide there. However, don't do remote administration for them! That's even worse than Microsoft's tracking! Whenever you install Linux on someone else's computer, don't be all about efficiency, they are coming from Windows and just want it to be easy to use. I use Mate myself, but it is not the thing I would recommend to others. In other words, put your own preferences aside in favor of objective usability. You're trying to sell people on a product, not to impose your own point of view. Dualboot with Windows is fine, gaming still sucks on Linux for the most part. Lots of people don't have their games on Steam. CAD software and such is still nonexistent (OpenSCAD is very interesting but don't tell me it's user-friendly). People are familiar with Windows. If you were to be swimming for the first time in the deep water, would you go without aids? I don't think so.
So, Linux can be shown and be actually usable by regular people. Just pitch it in the right way.10
Remember that time I taught a "senior" full stack developer what the HTTP PATCH verb was, DURING an interview?
Didn't get the job.
Yeah. Those were good times.2
I worked once in a company which had this tourist app which should show places on map of the city. Unfortunately it slowed the App down to load more then a couple of places. Their solution was to limit the number of loaded places to teb and prohibited zomming out. I made it handle thousands of places at the same time. Main reason for the Performance issue was, that they sent all data they had about places big, big json objects with large text blobs) to the frontend. This part was easy, I instead sent only the data needed for the map like coordinates and icon type obviously. But still the backend struggeled hard with many objects from the DB, because they built a really shitty orm or what ever this was supposed to be: every line of data retrieved from the DB was immideatly wrapped in some class wich direved from another class which had some magic methods in it which caused some absurd loops over all other obejcts and even more DB queries in unexpected moments and also in the fucking constructor. So it turrned out that the map issue was only the top of the iceberg, since using any data from the DB was extremely expensive. The hard part was to understand the insaness of this abnormination and find the bottlenecks.8
Client project manager calls me up one day
PM: hey can you make some precise estimates on some items for a project you’re not working on? It should be easy. It’s very similar to the project you ARE working on and it’s only a handful of user stories, mostly front end stuff. We´ll need this to be done by tomorrow night.
Me: um, I guess if it’s just a few simple items. ok
PM: great! I’ll let you know when you get access to the backlog.
Me: sounds good
Link to project is sent to me. Backlog contains over 20 user stories, most of which are backend related. And it doesn’t have much to do with my current project.
I contact PM: this isn’t exactly what you announced when I had you on the phone. If you want precise estimates with a minimum of design, this could take up to a week. I could however proceed to some ballpark estimates (poker planning) for starters if you need this quickly for your roadmap.
PM: no I need PRECISE estimates down to the hour for each item.
Me: ok then, it’ll take up to a week.
PM: 🤬🤬🤬. You told me it could be done in a day. I’m coming to realize your word can’t really be trusted.
A couple of weeks ago, I got to the second stage of a recruitment process with a relatively big fintech in the crypto space (I know) - all went well and although I did not think much of it at first, with all the information I had gathered I came to realize this might as well be the best opportunity I've had in my pursuit of finding a new job (i.e looking for high technical challenges, unsure of where I see myself in 5 years, wanting to give full-remote work a try, etc.).
Cue to the end of the interview;
"That's great! I really enjoyed speaking with you, your technical background seems excellent so we would like to move to the next stage which is a take-home test to do in your free time.", said the interviewer.
"Wow! Much amaze, well of course! What's it gonna be?", said the naive interviewee.
"I'm sending you the details via email, please send it back in 48 hours, buhbye now", she hangs up.
"48 hours?? Right, this should be easy then, probably some online leetcoding platform, as usual.", thought the naive interviewee, who evidently went through this sh*t numerous times already.
A day later I receive the email: this was the whole deal. The take-home test supreme with bacon and cheese. A full-blown project, with tests, a project structure, a docker image, testing and bullet points for bonus points! The assessment was poorly written with lots of typos and overall ambiguity, a few datasets were also provided but bloated with inconsistent comments and trailing whitespace.
What the actual fck??? Am I supposed to sleep deprive myself to death while also working my day job? What are you trying to assess? How much of my life I'm willing to sacrifice for your stupid useless coding challenge? You are not all Google, have some respect, jeez.
I did not get the job.2
My toxic father. Seriously man. It's my 4th day of learning to drive with an instructor. He sits besides and never knew how to drive. I think I am driving good wrt to being very new in it. He thinks just because I slow myself down on the road and cannot take a turn properly, let me say it again, on the 4th day of driving a manual car, he thinks I can never drive. What a fucking douchebag. What a fucking coward, impatient human says that. I am in rage because now I'm like 27, but in my childhood he was at his worst behaviour. That's why I was always scared of doing complex things, I stick with easy because I will make no mistakes. He has fucking no right in being proud of me. He's so fucking bad, I hate him. But more than hating him I want to find a way not to give a fuck about his fucking small discouraging shameful opinions. Fucker cannot do anything by himself. He's the most messed up fucking person I have ever seen. And oh god I fucking resent this guy.
I should start calling him a fucking retard that way I can devalue him as a person. I could never thought that I will think about a person like this but this retard left me no choice.
The thing is even a person is a retard I will try to understand them so give me a good word that just devalues a person instantly.14
So one day on tech huddle my tech lead got frustrated, don't know why and told me - "the tasks you're doing can be done by interns"
I felt bad. Ofcourse I was putting my 100%.
That day I decided to put the resignation. I didn't discussed with anyone about it and sent the resignation email directly.
After serving 2 months of notice period I was able to land a better job successfully!
I called the lead on the last working day in that company and shared him the news about my offer letter and a little about the company.
His first question was - "Did you cleared all the interview process?"
In my mind - "That's only why I'm sharing the news here with you man! Stop thinking of me as a noob."
I replied with - "yes, if needed/the new company try to get feedback about me then please be honest atleast there by keeping your ego aside."
You shouldn't pull someone's leg if you aren't able to climb higher!!
Lesson I learnt;
DON'T STAY AT A PLACE WHERE THERE'S NO VALUE OF YOUR WORK AND THE DEDICATION TOWARDS IT!
Working in a startup isn't that easy, mostly for those where there's no work life balance.2
"So Alecx, how did you solve the issues with the data provided to you by hr for <X> application?"
Said the VP of my institution in charge of my department.
"It was complex sir, I could not figure out much of the general ideas of the data schema since it came from a bunch of people not trained in I.T (HR) and as such I had to do some experiments in the data to find the relationships with the data, this brought about 4 different relations in the data, the program determined them for me based on the most common type of data, the model deemed it a "user", from that I just extracted the information that I needed, and generated the tables through Golang's gorm"
VP nodding and listening intently...."how did you make those relationships?" me "I started a simple pattern recognition module through supervised mach..." VP: Machine learning, that sounds like A.I
Me: "Yes sir, it was, but the problem was fairly easy for the schema to determ.." VP: A.I, at our institution, back in my day it was a dream to have such technology, you are the director of web tech, what is it to you to know of this?"
Me: "I just like to experiment with new stuff, it was the easiest rout to determine these things, I just felt that i should use it if I can"
VP: "This is amazing, I'll go by your office later"
Dude speaks wonders of me. The idea was simple, read through the CSV that was provided to me, have the parsing done in a notebook, make it determine the relationships in the data and spout out a bunch of JSON that I could use. Hook it up to a simple gorm golang script and generate the tables for that. Much simpler than the bullshit that we have in php. I used this to create a new database since the previous application had issues. The app will still have a php frontend and backend, but now I don't leave the parsing of the data to php, which quite frankly, php sucks for imho. The Python codebase will then create the json files through the predictive modeling (98% accuaracy) and then the go program will populate the db for me.
There are also some node scripts that help test the data since the data is json.
All in all a good day of work. The VP seems scared since he knows no one on this side of town knows about this kind of tech. Me? I am just happy I get to experiment. Y'all should have seen his face when I showed him a rather large app written in Clojure, the man just went 0.0 when he saw Lisp code.
I think I scare him.12
fucking hate how some sites deliberately break their own scroll functionality if you haven't logged in/accepted gdpr nonsense/signed up for a newsletter.
It's such an easy fix (most of them just slap style="overflow:hidden;" to their <html> tag) but I still think it's very loathsome1
I really like Docker. I think that’s the best thing that happened in the dev field for years. Easy shipping and installation of software without messing up dependencies to other software.16
!rant, but kinda
My new director wants to buy a solution for a portal environment that my institution currently has. I have no qualms over it. My only issue was the company that sells it to be known to provide close to 0 fucking support when shit arises.
During a presentation we were told that they were using state of the art JAVA technology to render items on the page and that their ApI was easy for devs to grasp. This caught my attention since I know of very few and obscure Java frameworks that work with frontend tech (as in, your frontend logic is legit in Java)
I do not like to be questioned. I shoot the shit here and don't really involve myself with more technical aspects under this platform unless it involves concrete architecture discussions and even there I really don't care with engaging on a forum concerning that. But concerning my job I really.......really do not like to be questioned by people that know way the fuck less than me. I started coding when I was 17, I am 30 now, with a degree and years of experience. I really hate to be questioned by this dude.3
Everyone and their dog is making a game, so why can't I?
1. open world (check)
2. taking inspiration from metro and fallout (check)
3. on a map roughly the size of the u.s. (check)
So I thought what I'd do is pretend to be one of those deaf mutes. While also pretending to be a programmer. Sometimes you make believe
so hard that it comes true apparently.
For the main map I thought I'd automate laying down the base map before hand tweaking it. It's been a bit of a slog. Roughly 1 pixel per mile. (okay, 1973 by 1067). The u.s. is 3.1 million miles, this would work out to 2.1 million miles instead. Eh.
Wrote the script to filter out all the ocean pixels, based on the elevation map, and output the difference. Still had to edit around the shoreline but it sped things up a lot. Just attached the elevation map, because the actual one is an ugly cluster of death magenta to represent the ocean.
Consequence of filtering is, the shoreline is messy and not entirely representative of the u.s.
The preprocessing step also added a lot of in-land 'lakes' that don't exist in some areas, like death valley. Already expected that.
But the plus side is I now have map layers for both elevation and ecology biomes. Aligning them close enough so that the heightmap wasn't displaced, and didn't cut off the shoreline in the ecology layer (at export), was a royal pain, and as super finicky. But thankfully thats done.
Next step is to go through the ecology map, copy each key color, and write down the biome id, courtesy of the 2017 ecoregions project.
From there, I write down the primary landscape features (water, plants, trees, terrain roughness, etc), anything easy to convey.
Main thing I'm interested in is tree types, because those, as tiles, convey a lot more information about the hex terrain than anything else.
Once the biomes are marked, and the tree types are written, the next step is to assign a tile to each tree type, and each density level of mountains (flat, hills, mountains, snowcapped peaks, etc).
The reference ids, colors, and numbers on the map will simplify the process.
After that, I'll write an exporter with python, and dump to csv or another format.
Next steps are laying out the instances in the level editor, that'll act as the tiles in question.
Theres a few naive approaches:
Spawn all the relevant instances at startup, and load the corresponding tiles.
Or setup chunks of instances, enough to cover the camera, and a buffer surrounding the camera. As the camera moves, reconfigure the instances to match the streamed in tile data.
Instances here make sense, because if theres any simulation going on (and I'd like there to be), they can detect in event code, when they are in the invisible buffer around the camera but not yet visible, and be activated by the camera, or deactive themselves after leaving the camera and buffer's area.
The alternative is to let a global controller stream the data in, as a series of tile IDs, corresponding to the various tile sprites, and code global interaction like tile picking into a single event, which seems unwieldy and not at all manageable. I can see it turning into a giant switch case already.
So instances it is.
Actually, if I do 16^2 pixel chunks, it only works out to 124x68 chunks in all. A few thousand, mostly inactive chunks is pretty trivial, and simplifies spawning and serializing/deserializing.
All of this doesn't account for
* putting lakes back in that aren't present
* lots of islands and parts of shores that would typically have bays and parts that jut out, need reworked.
* great lakes need refinement and corrections
* elevation key map too blocky. Need a higher resolution one while reducing color count
This can be solved by introducing some noise into the elevations, varying say, within one standard div.
* mountains will still require refinement to individual state geography. Thats for later on
* shoreline is too smooth, and needs to be less straight-line and less blocky. less corners.
* rivers need added, not just large ones but smaller ones too
* available tree assets need to be matched, as best and fully as possible, to types of trees represented in biome data, so that even if I don't have an exact match, I can still place *something* thats native or looks close enough to what you would expect in a given biome.
Ponderosa pines vs white pines for example.
This also doesn't account for 1. major and minor roads, 2. artificial and natural attractions, 3. other major features people in any given state are familiar with. 4. named places, 5. infrastructure, 6. cities and buildings and towns.
Also I'm pretty sure I cut off part of florida.
Woops, sorry everglades.
Guess I'll just make it a death-zone from nuclear fallout.
Take that gators!5
Trying to get my 'patience for Idiots' threshold back up to 15 minures. Not easy.
The problem is - you need to listen to them talking for 20 minutes before 30 seconds of relevant and actual info comes up.4
I am feeling little fucked up.
I talked to one of the female employees from my new company, I'll be joining next month.
She asked manager to hire a girl in the team, I know she casually asked but after knowing this, I know my interviews were surprisingly easy, I mean I know already that no one asked me to optimize anything... did the fucking hired me for diversity, pay is good, people are good, work is good but seriously if I'm getting hired for the fucking diversity my manager is going to have a good speech from me and I'll move from his team for sure.24
I don’t remember the first experience as I was a very small child, but I remember a very defining one: picture a 4yo just casually turning on the computer and playing a game.
My mother and sister find me out and panic because “oh no, turning it off it’s hard how will we do? Your father is working and can’t turn it off!”
Now picture the 4 yo saying “it’s easy, you just do this”, followed by him closing the game, launching the bash command to close the computer and going away.
I must have been so creepy in their eyes 😂2
I really despise solving competitive programming problems.
I truly believe it's okay to struggle with them and that people have different abilities. But these kind of problems are an easy way to make you hate yourself and think of yourself less.
I can't solve this problem --> I'm not a good programmer --> I'm not smart enough --> I'm not good enough like my peers who work at FA*G companies, ...
I know these interview problems are a filter and that recruiting is hard and the demand is always high and that they are nothing like the real work but, the reality is, you need to prepare if you want to get into one of the big companies with better perks and maybe better projects.3
Anyone reading these emails we are sending?
I work at a small place. A few users are using an application at our place that I develop and maintain. We all work remotely.
I announce by email to these few users a new version release of said application because of low level changes in the database, send the timeline for the upgrade, I include the new executable, with an easy illustrated 2 minutes *howto* to update painlessly.
Yet, past the date of the upgrade, 100% of the application users emailed me because they were not able to use the software anymore.
Or I have this issue where we identified a vulnerability in our systems - and I send out an email asking (as soon as possible) for which client version users are using to access the database, so that I patch everything swiftly right. Else everything may crash. Like a clean summary, 2 lines. Easy. A 30 second thing.
A week pass, no answer, I send again.
Then a second week pass, one user answers, saying:
> well I am busy, I will have time to check this out in February.
Then I am asking myself:
* Why sending email at all in the first place?
* Who wrote these 'best practices textbooks about warning users on schedule/expected downtime?'
*How about I just patch and release first and then expect the emails from the users *after* because 'something is broken', right? Whatever I do, they don't read it.
Oh and before anyone suggest that I should talk to my boss about this behavior from the users, my boss is included in the aforementioned 'users'.
Catch-22 much ? Haha thanks for reading
When my manager says you can do this whole project in 14 days its very easy,
meanwhile project and me2
College is no place to chill and be laid back as shown in movies. The reality is that it is more challenging than school with peer pressure being no stranger to us.
Being a newbie in the tech domain, and being a girl, I felt the gender gap and the intimidation newbies like me go through when we see legit programmers who flaunt their skills and make it obvious that they exactly know what they are doing.
But along with all this ranting, for all the newbies out there, remember that this phase too shall pass and its not as scary as it seems (I kept convincing myself).
Always start with something easy and take baby steps, one good coding language to start with would be python, as it is more understandable and less intimidating and complex-looking than languages like C and C++.
I still struggle, but there are times when it gave me great joy like the time I developed an app with Flutter or when I managed to grab a free tee from hacktoberfest 2019.
Stay home and Stay safe buddy ;)
P.S: If you a dev and want some cool swags check the website devswag, you won't be disappointed :)8
JSON de/serializer for C++, recommendations?
I used boost serialization until now, and it's fine.
But I will need to send some stuff over REST protocol to my future-web-GUI.
I would like something that is easy to build, not bloated, and could handle class serialization.
Can someone please write a plugin that automatically translates bug tickets into startup-ese? It would make it very easy to present the most common offenders to higher management on quarterly reviews.
$< "screen A is all messed up"
$> "We are disrupting the establishment in screen A"
$< "API B is not responding, giving timeout errors"
$> "We are facing logistical challenges in API B"4
"Hey can you make this excel report for me real quick? Here are the columns, you gotta get them from this table in the database. Shouldn't take long."
Alright, sounds easy enough wait where is the data. I have to join how many tables? What is this bullshit data? I want to strangle the guy who modeled this piece of garbage.5
I think, right now, it's bitting more than I can chew.
I get my hands on way too many projects because they're easy and then problems pile and I end up being behind schedule on everything.
That, and maybe sometimes subconsciously thinking I'm invincible. It's a direct psych response to those telling me I can't do shit, and then I do shit out of pure stubbornness, and then I have super-confidence for a short while. (Even if I don't show it)
I just don't think it's healthy.
FML or how I made myself unhireable
TL;DR: Working as a QA.
New job sucked.
Left after three months.
Got laid off from the next one after 4 months (not my fault).
Got a Dev job back in the first company.
Job sucks, cannot leave… (5 months in)
I was doing pretty well as a QA Enginner. Started with internship, then junior in company A, then big pay rise moving to company B, where I quickly got promoted to Senior. As I was nearing 3yrs of exp, I decided it’s time for a change, as things were getting worse project-wise and felt like I was regressing. Also I was constantly bombarded with offers of +50% of my salary I could easily land, while company offered 10%.
Moved on to company C. This is where it started getting rocky. I was told I would be working on this one project, strictly test automation, nothing exciting but an easy gig. However week in, I was told to work on this other project 50/50. This was a startup kind of thing. It was a nightmare. Only manual testing. Most tickets had only a vague title, no description, no requirements, nothing. How do one test something without any knowledge how it should work? Besides that, the project lead on the client side was aggressive sometimes.
The workload was immense - 4 devs, 2 of them doing heavy overtime, so the output was like 6 devs and half of a tester….
Despite raising the problems, nothing was going to change, nor I could switch projects. The job began to heavily affect my mental health. Decided not to prolong my contract and left after 3 month probation period.
Quickly landed a job in company D. As my burnout as a tester kept bothering me more and more I decided that this was going to be my last job as a QA and next one will be a Dev. You see, I never enjoyed the tester part, I always enjoyed the automation part more. The plan was to learn in free time and after 18-24 months start applying for a dev role to see if I can land one (switching inside D was not an option). All plans went to hell, as I was handed a one month notice by the end of my third month. A month before my wedding… I was told the company was having financial issues and was laid off with about 30% of people in the company (mostly new hires).
I got depressed. I wouldn’t get out of bed for a few days. I never thought something like this would ever happen to me. Standing by my decision I was applying for development jobs, but most recruiters seeing either only QA experience or my recent 3 and 4 month employment periods weren’t responsive. Applying for testing jobs was a bit better but still nothing like before C and D.
Since company B I stayed in touch with my former manager, and he kept telling me that a new team has taken over most of the shitty work, and they are now working on cooler stuff and have more coming. He encouraged me to come back, as he has always thought highly of me professionally.
Looking at my options, I could probably get another testing job with lower pay, maybe I could land a junior Dev with like 1/3 of my salary or I could go back. So in my dark time I have reached out to my manager and just like that he got me a Senior Dev position, same pay as in company D.
Finally what I wanted right? Yeah… As soon I as joined all the new initiatives were being dropped one by one, and backlog got flooded with bugs and sh*t again. Five months in I hate my job again. Cannot leave cause no one will hire me…
Where I made the mistake?
Shouldn’t leave B despite facing regression and being underpaid?
Shouldn’t leave C no matter what?
Shouldn’t come back to B?6
Creating a stripped down version of a product is a big red flag to me (e.g. "easy/light mode").
It means the main product is too complicated; it handles too many things. Instead, shift the focus back to the core of the product by removing features.
In the our day-to-day it is completely normal to stumble upon things that used to work but now have been changed: they have been deprecated.
Deprecating and removing features should be added to any product iteration. Thus being "normal" and a common occurrence in any changelog; just like features and bug fixes.
This gives non-tech product owners "permission" to remove bloat. Devs stop whining about "the big rewrite". And end-users don't suddenly have to learn yet another tool with "basic" features missing.
I think the best example is google (https://killedbygoogle.com/) and the worst is the amazon shopping website (what a mess!).3
Web Devs - I need your opinions.
To make a long story short, when my fiancé and I first moved in together I changed cities. One day at the grocery store we ran in to one of his old buddies, whom I had never met. His buddy works as a counselor at a non profit organization for mental illness. His friend asked me some questions to get to know me and found out I was a web developer. He instantly got exited and told us they needed a new website for their non profit, and asked me what I charged. Being shy, put on the spot, newer to the industry (uncomfortable talking $ due to inexperience) and seeing the guy was paralyzed I felt I HAD to say yes. I also said I would consider donating the site to them, as I knew my other web dev friends had done that for other non profits.
They were easy to work with and the build went smooth. We chose Wordpress so that they could go in and update the site on their own. I was under the assumption that I would create the site for them, but that they would take care of changes on their own, that I wouldn't be "supporting it". I even trained the friend 2-3xs on how to use Wordpress and make changes, but they ALWAYS have changes every month, including slides and content creation. Being a noob at the time, I KNOW it's my fault for not being more clear on the I'll build it but not make changes thing, and I've tried to kind of get them to see that I'm too busy, politely.
We'll, 3+ years later I've now found success in a different career path that takes up ALL of my free time after my 9-5 corporate web dev position, and am no longer interested nor able to do freelance work, including supporting existing sites. Since we don't have a contract in place, and they've never given me a cent, i was thinking of giving them a notice at the end of this month saying as of 2018 I will no longer be able to take care of their website, and that they'll have to find someone else by that time? I feel bad because it's a non profit and they don't have a lot of money. I'm afraid they won't find someone else nor be able to afford it. The situation is a little more sticky since this is my fiancés friend and I don't want them to feel like I'm leaving them high and dry, cuz I know they're very thankful for the site. I just wish they understood that I never promised to do changes for them every month. Even if they offered me money, I just don't have the time. I'm 100% fine if they want to keep the site and my code, although they really could use a redesign anyways cuz my code back then was terrible. What are your thoughts on this? Is 5 months fair? Am I doing the right thing?8
Probably everyone at least once had situation when they receive a meaningless screenshot with 500 page, a message "Application doesn't work fix it" and 0 info whatsoever.
Here is my tip that saved me a lot of trouble.
I display error id in the center of the screen, large enough so no matter how small and blurry the image is (yes users, send us photos of theirs displays) , It is always easy to ready it so we can start investigation without talking to those monkeys.3
Would you like to talk about our god and saviour TDD?
P.S. I like test driven development very much. It makes complex stuff really easy.4
So, i fucking finally got bash-scripting! FINALLY, you know how?! When I started treating it like a LISP. It's like walking on water, I feel fucking god-like. Total ego/power/ecstatic trip here, you guys have no idea. I mean, HOW COULD IT BE SO EASY AND I'D NEVER EVER SEEN IT THAT WAY. After so much hair loss, such a tiny view switch changed my whole way of looking at a terminal 😵💫😵💫😵💫😵💫5
You know what fuck github , anyone remember when git cli was easy and straight forward to use
Now i have conflicting master branches because the remote is main and git automatically defaults to master.
Git still asks for a password while github can't wait to inform me how I have to go through the very long process of setting up an auth_token.
Apparently https remote origins for some reason don't work anymore, why because apparently i need to change them into ssh, good luck with the public key errors
This sucks , fuck github and fuck politics9
I am finally again at a company where I enjoy working and my coworkers are great that makes it easy staying motivated. Besides that need to provide for my family.2
God I fucking hate macs.
I got a mac at work. I tried to install ubuntu, with rather questionable results (unfortunately, I expected that) - so I tried to get mac work for me the way I like a system to work. I needed to download slack, simple enough, right? Ha, you wish. It's gotta be done through Apple store, so I went to create an Apple ID inside the Apple Store form. And, well, it just errored out on the submission. Great start. I went then to the settings and created an account there, great success, went back to Apple Store. Unfortunately being logged in at the system level doesn't mean you are logged in to the store. So, I went to log in to the store, simple enough, right? No, nothing's simple with Apple. After logging in I got a message that the Apple ID has not yet been used with Apple Store and that I need to review the account's setting. So, I click the "review" button and... I'm presented with a log in form. Yep, a perfect log in loop. I can't log in because I can't review the account but I can't review the account because I can't log in. Fun :)
You can't just go to the web admin panel for your account to review it for Apple Store, that would too be too easy. After a bit of searching I've found an answer on StackOverflow. You need to log in to iTunes. Through a fucking MUSIC APP. To install a free application from the store you need to log in to a music app. Yes, we're all mad here.
Then, after finding out that to be able to use side buttons on my mouse I need an app that I need to manually restart every time I restart the machine and that I need to have an app to fucking transfer files from an android I need another fucking app, because reading a storage of a linux-based system would be too standards compliant - something in me broke. I found out that installing windows on a mac is officially supported.
Supported doesn't mean that it's easy. I tried to install it trying different solutions from SO, but each time I would get an error that Windows couldn't modify the boot partition. Turns out that even wiping the drive and reinstalling OSX doesn't remove residual files on a boot partition and Windows installer is not allowed to modify them. It took me hunting into some shady looking site to actually find this answer. I have no fucking idea how long it all took me, but, finally, great success, Windows, WSL, side buttons working, I can even install slack from an installer. I just wish I could have those hours of my life back.19
Why the UI/UX guys don't understand that aligning divs is not that easy???
We cant fucking drag those things ....6
I did not think that making a serverless Discord bot would be such a learning experience. The code itself was easy. The hard part was the infrastructure, because I decided to automate it all with Terraform and deploy it on AWS.
Before this project, I had no idea how API Gateways worked. Now I still have very little idea how they work but I managed to build one anyway. Eventually. And then I had to figure out how to automate the deployment of a lambda layer and function that would both still be managed in the Terraform state, with any code changes triggering a rebuild and update for the resource.
And then I had to untangle a dependency mess because API Gateways have some weird issues where two resources that have no explicit dependencies on each other will throw an error if they don't deploy in the right order.
And then I went the wrong way with Github actions trying to conditionally chain multiple workflows together before I realized I could just put multiple jobs with conditions in a single workflow.
And now after all that work over the course of 2 days, I have a bot that does this:2
Situation: I have a love hate relationship with python due to the lack of types as I have in more established languages such as C#, Java and shit even TypeScript
Situation (cont): A rather large codebase that i have developed for multiple processes at work run on Python.
I don't hate it, I just don't absolutely love it, there is a lot of things to like about Python, but man I do have some conflicts with it, I have been facing out to use other solutions that feel scripty, such as the newer versions of C# with .net, but I would say that about 80% of our codebase runs on Python, the rest is PHP.
My codebase running on Python is huge, and they do a lot from automation scripts, to data gathering and database management, never had I been bitten with the "oh noes is so slow" bug since my code is not Google level big, for everything else Python seems rather fast imho
I dunno, big time love hate relationship9
I just transformed a sorting command that was seven lines long into an ungodly abomination that was about 70 lines.
We don't do these things because they are easy, we do them because we thought they are easy.
I will always remember that phrase and might never find out who came up with it.13
>Burn easy af
>Start balding in 20s
>That's annoying in the first place
>"JUsT sHaVe yOuR hEaD tHeN"
>Don't like caps/hats
>Live in South Africa, see above about burning12
Data wrangling is messy
I'm doing the vegetation maps for the game today, maybe rivers if it all goes smoothly.
I could probably do it by hand, but theres something like 60-70 ecoregions to chart,
each with their own species, both fauna and flora. And each has an elevation range its
found at in real life, so I want to use the heightmap to dictate that. Who has time for that? It's a lot of manual work.
And the night prior I'm thinking "oh this will be easy."
(Also why does Devrant have to mangle my line breaks? -_-)
Laid out the requirements, how I could go about it, and the more I look the more involved
So what I think I'll do is automate it. I already automated some of the map extraction, so
I don't see why I shouldn't just go the distance.
Also it means, later on, when I have access to better, higher resolution geographic data, updating it will be a smoother process. And even though I'm only interested in flora at the moment, theres no reason I can't reuse the same system to extract fauna information.
Of course in-game design there are some things you'll want to fudge. When the players are exploring outside the rockies in a mountainous area, maybe I still want to spawn the occasional mountain lion as a mid-tier enemy, even though our survivor might be outside the cats natural habitat. This could even be the prelude to a task you have to do, go take care of a dangerous
creature outside its normal hunting range. And who knows why it is there? Wild fire? Hunted by something *more* dangerous? Poaching? Maybe a nuke plant exploded and drove all the wildlife from an adjoining region?
Having the extraction mostly automated goes a long way to updating those lists down the road.
But for now, flora.
For deciding plants and other features of the terrain what I can do is:
* rewrite pixeltile to take file names as input,
* along with a series of colors as a key (which are put into a SET to check each pixel against)
* input each region, one at a time, as the key, and the heightmap as the source image
* output only the region in the heightmap that corresponds to the ecoregion in the key.
* write a function to extract the palette from the outputted heightmap. (is this really needed?)
* arrange colors on the bottom or side of the image by hand, along with (in text) the elevation in feet for reference.
For automating this entire process I can go one step further:
* Do this entire process with the key colors I already snagged by hand, outputting region IDs as the file names.
* setup selenium
* selenium opens a link related to each elevation-map of a specific biome, and saves the text links
(so I dont have to hand-open them)
* I'll save the species and text by hand (assuming elevation data isn't listed)
* once I have a list of species and other details, to save them to csv, or json, or another format
* I save the list of species as csv or json or another format.
* then selenium opens this list, opens wikipedia for each, one at a time, and searches the text for elevation
* selenium saves out the species name (or an "unknown") for the species, and elevation, to a text file, along with the biome ID, and maybe the elevation code (from the heightmap) as a number or a color (probably a number, simplifies changing the heightmap later on)
Having done all this, I can start to assign species types, specific world tiles. The outputs for each region act as reference.
The only problem with the existing biome map (you can see it below, its ugly) is that it has a lot of "inbetween" colors. Theres a few things I can do here. I can treat those as a "mixing" between regions, dictating the chance of one biome's plants or the other's spawning. This seems a little complicated and dependent on a scraped together standard rather than actual data. So I'm thinking instead what I'll do is I'll implement biome transitions in code, which makes more sense, and decouples it from relying on the underlaying data. also prevents species and terrain from generating in say, towns on the borders of region, where certain plants or terrain features would be unnatural. Part of what makes an ecoregion unique is that geography has lead to relative isolation and evolutionary development of each region (usually thanks to mountains, rivers, and large impassible expanses like deserts).
Maybe I'll stuff it all into a giant bson file or maybe sqlite. Don't know yet.
As an entry level programmer I may not know what I'm doing, and I may be supposed to be looking for a job, but that won't stop me from procrastinating.
Data wrangling is fun.2
Hope everyone had a chill and relaxed day. I know I did. Sun was nice. People at work were so easy going. Didn't have a segfault all day.
Was to be expected. It was 4/20 all day.11
I dont like programming languages where "there is more than one way to do it".
There should be one way to do things, it makes it easy for developers to understand code others have written, it makes it easier to start working in new teams etc etc.23
How to Stop #war in #ukraine and #russia? Easy. Just burn a big bush of #cannabis / #weed to the atmosphere, you will see both sides are high AF.
Maybe they both will get high instead of war.
I am John Melody, I want to represent you.1
I currently work on a legacy system for a company. The system is really old - and although I was hired as a programmer, my job is pretty much glorified data entry. To summarise, I get a bunch of requirements, which is literally just lots of data for each month on spreadsheets and I have to configure the system to make it work, which is basically just writing a whole bunch of SQL scripts.
It’s not quite as simple as that, because whoever wrote the system originally really wrote it backwards, and in fact, the analysts who create the spreadsheets actually spend a fair bit of time verifying my work because the process is so tedious that it’s easy to make a mistake.
As you can guess, it is pretty much the most boring job ever. However, it’s a full time job with decent pay, and I work remotely so I can stay home with my son.
So I’ve been doing it for about 18 months and in that time, I’ve basically figured out all the traps to the point where I’ve actually written a program which for the past 6 months has been just doing the whole thing for me. So what used to take the last guy like a month, now takes maybe 10 minutes to clean the spreadsheet and run it through the program.
Now the problem is, do I tell them? If I tell them, they will probably just take the program and get rid of me. This isn’t like a company with tons of IT work - they have a legacy system where they keep all their customer data since forever, and they just need someone to maintain it. At the same time, it doesn’t feel like I’m doing the right thing. I mean, right now, once I get the specs, I run it through my program - then every week or so, I tell them I’ve completed some part of it and get them to test it. I even insert a few bugs here and there to make it look like it’s been generated by a human.
There might be amendments to the spec and corresponding though email etc, but overall, I spend probably 1-2 hours per week on my job for which I am getting a full time wage.
I really enjoy the free time but would it be unethical to continue with this arrangement without mentioning anything? It’s not like I’m cheating the company. The company has never indicated they’re dissatisfied with my performance and in fact, are getting exactly what they want from employing me.4
C/C++ - complex, very fast, used for OS dev
Java - Comparatively easy, fast, used app dev
Python - very easy, comparitively slow, used for app dev
Then there is this boy
Rust - Just fucks you up10
What the absolute fuck were you thinking Microsoft?
You're doing everything you can to ensure that those who continue to use Github are flogged and castrated?
What the fuck happened to the SSH clone link that was so easy to keep in all you had to do was *checks notes* fucking NOTHING.
It makes me question choices I have made over the last two years. Like, why don't I just host my own git server at this point? I have a couple servers running and it would cost me next to nothing.
Before anyone says anything about GitLab , I looked. I would be spending three times what I am now if I used them.
At this point it seems like a futile attempt to stay with you. I'm going to start calling you ShitHub now because it's a place where I can't get shit done without some kind of new shitty "improvement".
2022 is lining up to be a spectacular year!
Fuck you Microsoft.8
*phases of learning to program*
Yeah its so easy i love programming i'm gonna be a top programmer.
Uuuhg.. programming sucks,i think i'm not meant for it,should i give up do something else maybe...
for the life of me I cannot figure out in my mind how to structure this project I want to start, and jumping right into coding does not improve this mental block.
At work this Golang code base has a clean architecture, so easy to maintain and extend, and I'm unable to replicate it on my own project(s). It sucks to be an ignorant.2
Easy-E discovered The CSS Secret and was assassinated by Google Time-Traveling Death Squad. Now Google is after me, check my “google is trying to kill me” rant. @Root knows their methods and can confirm this.
When I’ll disappear like Ian Murdock, the Debian creator, don’t believe fake news. If news will keep their lips sealed like with Ian, treat their silence as the confirmation that I’m no longer alive.13
Working on an Angular project for the change of things. God, please kill me already.
Its fucking slow - hot reload? I am gonna make myself a coffee in the meanwhile
Its fucking stupid - Why make it easy when you can make black boxed. Make the magic happen!
And please dont get me started on Ressources, documentation, error messages and all the other stuff thats annoying here. Never going back to Angular, if it wasnt paid that well…3
I'd like to hear from developers which prefers Angular to React the reason of said preference.
I want to hear that becasue I like React way more than Angular since I find which is easier to learn (making a form with a React hook is easy while it takes days just to get a grip on Angular forms), it usually takes less code to do things, it doesn't force libraries which may not be necessary for your use case and just makes your bundle bigger (for example most things which are done in NgRx can be done just as easily with regular JS promises without the need of an external tool) and I generally prefer functional programming to OOP.
Said that I want to hear the other side, not to argue but because I want to know cases in which Angular may be a better choice than React to become a better rounded dev.10
Remember the old Battlefields like 1942 I think it was, the demo version, how easy it was to just jump in and play against AI bots.
2042 I hear has AI bots..
So far I can't easily figure out how to play solo against them..
Lets ignore the near hour it took to, no wait, 2 hours it took to download and install the latest patch, and then like treacle work our way into the game, and actually start playing..
Can you imagine of video arcades was like that, queue for 2 hours before you do anything enjoyable !
So, its got AI bots right ?
So.. how do I start a game with just AI bots ?
Of course, if I had ordered it in physical form, it would have come with a manual right..7
What would be the easiest starting point on low level languages?
I started with java, learned to hate it.
I continued with web development, learned to hate it.
Continued with PHP, learned to hate it.
Continued with scripting languages like Python, NodeJS, etc.., hated it from the beginning but it was easy.
But everytime i touch something like c/c++/rust/etc i immeadiatly give up, because the syntax is so different than all these other high level languages and so much null/type safety and so on.
But i want to get into low level programming languages which compile to an executable and don't get executed on some "vm".12
Its most enjoyable when you are working on a codebase that was cleary planned and thought out beforehand. Bugs are easy to fix, features are easy to make because you already have a blueprint of how its supposed to look, modifying features is easy because you already know where to look to make the changes. You can work with plain jquery or fucking visual basic and youll still have a better time then with any modern framework if you have that.
Need some opinions.
Imagine you’ve got loads of .net + angular under your belt. Like 10+ years.
A new place wants good software engineers from any background but their main thing is Java. So for their new work you will probably be writing it in Java.
Would you turn it down because by this point your specialised in .net.
Or would you be more ‘easy-come-easy-go’ about it and happily learn Java (not too hard) and all the surrounding libraries, toolset (I suspect this is where the effort would be)
I’m kind of of the opinion that switching to a whole other ecosystem might set you back. If you had to put a label on it I would describe it as going from being a senior to a mid-senior.
As you would fall behind with .net but still be trying to up skill in the Java toolset.
And it does feel a bit like learning Java at this point is like learning cobol.
Is my thinking wrong?4
I don’t get why ARM assembly is so much clunkier than it should be. It could’ve been so much more readable and easy to write in if more dev-friendliness was built into the syntax.15
Just an appreciation post. Ant Design is the best React Library that I have encountered so far. It's so easy and clean to create new modules. It has already built-in features, especially for Tables.
As a backend developer who has been working in front-end for the past 6 months, I love this library.
Hi all, how do you deal with imposter syndrome?
I just joined a new job 3 mths back and am struggling with feeling productive. I feel my manager thinks I might be incompetent as my project deliveries are getting delayed.
I was burnt out as last job and it hasn't been easy picking up domain knowledge in a new workplace esp with wfh.
Any advice on how to deal with such a situation ?3
Who loves lead developers who don't code, saying that the task should be easy because it's just boilerplate code?1
Where do I start on Leetcode? There is
- Top Interview Questions
- Easy, Medium and Hard Interview sections
- DS and Algo Study Plans
In most businesses, self-proclaimed full-stack teams are usually more back-end leaning as historically the need to use JS more extensively has imposed itself on back-end-only teams (that used to handle some basic HTML/CSS/JS/bootstrap on the side). This is something I witnessed over the years in 4 projects.
Back-end developers looking for a good JS framework will inevitably land on the triad of Vue, React and Angular, elegant solutions for SPA's. These frameworks are way more permissive than traditional back-end MVC frameworks (Dotnet core, Symfony, Spring boot), meaning it is easy to get something that looks like it's working even when it is not "right" (=idiomatic, unit-testable, maintainable).
They then use components as if they were simple HTML elements injecting the initial state via attributes (props), skip event handling and immediately add state store libraries (Vuex, Redux). They aren't aware that updating a single prop in an object with 1000 keys passed as prop will be nefarious for rendering performance. They also read something about SSR and immediately add Next.js or Nuxt.js, a custom Node express.js proxy and npm install a ton of "ecosystem" modules like webpack loaders that will become abandonware in a year.
After 6 months you get: 3 basic forms with a few fields, regressions, 2MB of JS, missing basic a11y, unmaintainable translation files & business logic scattered across components, an "outdated" stack that logs 20 deprecation notices on npm install, a component library that is hard to unit-test, validate and update, completely vendor-& version locked in and hundreds of thousands of wasted dollars.
I empathize with the back-end devs: JS frameworks should not brand themselves as "simple" or "one-size-fits-all" solutions. They should not treat their audience as if it were fully aware and able to use concepts of composition, immutability, and custom "hooks" paired with the quirks of JS, and especially WHEN they are a good fit.
What did the CS student say when he totally killed his web API class and got an A?
"REST easy now."1
Read this and tell me OOP (or at least C#) isn't broken:
All I want to do is mock System.DateTime is for a few of my tests, and I ended up going down this rabbit hole of absolute horseshit: build a custom class that you can mock in tests, blah blah blah blah, uhhhh... YEAH NO
Such a simple functionality / need, and yet there is no easy way to test for it. Sigh.16
Building your e-commerce looks easy for a dev. Just build a webapp and cry over it not getting hits 🤷♂️.
Did someone already thought about how color highlight can be better? It's been 4-5 years now that I'm coding on a virtual console that run on iPad with a monochrome code editor. Despite the fact that's remind me the old days when I was 8 years old, that doesn't stop me for coding with it.
I mean, is it really important to know that strings are red and numbers are yellow? How does that help me? They are both literal and behave to the user-content categories.
I was talking with my friend, and he says he likes to know if something is a keyword or an identifier. In C++, a lot of common keywords to define stuff and control the flow are often the first word and easy to spot.
A couple of months ago, I tried Flutter, and the editor can highlight ident blocks and give them different colors, but with Flutter, it's easy to get 10 or more ident levels, Does the color help? Splitting the code does.
I think, there is so much stuff that is more important than coloring the grammar of a language. For instance: knowing if an identifier belongs to which Rust Crate because, It's easy to stack 10 or more dependencies in one file that as better chances of names collisions.
Knowing if an identifier was recognized, if it used, if it's a local, a member, a global, a compiled value or a macro seems more important.
I would like to color block of code that is important or sensible. That will help my coworker about the severity of a particular place in the code.
What do you think?1
A year ago I built my first todo, not from a tutorial, but using basic libraries and nw.js, and doing basic dom manipulations.
It had drag n drop, icons, and basic saving and loading. And I was satisfied.
Since then I've been working odd jobs.
And today I've decided to stretch out a bit, and build a basic airtable clone, because I think I can.
And also because I hate anything without an offline option.
First thing I realized was I wasn't about to duplicate all the features of a spreadsheet from scratch. I'd need a base to work from.
I spent about an hour looking.
Core features needed would be trivial serialization or saving/loading.
Proper event support for when a cell, row, or column changed, or was selected. Necessary for triggering validation and serialization/saving.
Custom column types.
Embedding html in cells.
Optional but nice to have:
Changeable column width and row height.
Drag and drop on rows and columns.
Right click menu support out of the box.
After that hour I had a few I wanted to test.
And started looking at frameworks to support the SPA aspects.
Both mithril and riot have minimal router support. But theres also a ton of other leightweight frameworks and libraries worthy of prototyping in, solid, marko, svelte, etc.
I didn't want to futz with lots of overhead, babeling/gulping/grunting/webpacking or any complex configuration-over-convention.
Didn't care for dom vs shadow dom. Its a prototype not a startup.
And I didn't care to do it the "right way". Learning curve here was antithesis to experimenting. I was trying to get away from plugin, configuration-over-convention, astronaut architecture, monolithic frameworks, the works.
Could I import the library without five dozen dependancies and learning four different tools before getting to hello world?
"But if you know IJK then its quick to get started!", except I don't, so it won't. I didn't want that.
Could I get cheap component-oriented designs?
Was I managing complex state embedded in a monolith that took over the entire layout and conventions of my code, like the world balanced on the back of a turtle?
Did it obscure the dom and state, and the standard way of doing things or *compliment* those?
As for validation, theres a number of vanilla libraries, one of which treats validation similar to unit testing, which seems kinda novel.
For presentation and backend I could do NW.JS, which would remove some of the complications, by putting everything in one script. Or if I wanted to make it a web backend, and avoid writing it in something that ran like a potato strapped to a nuclear rocket (visual studio), I could skip TS and go with python and quart, an async variation of flask.
This has the advantage that using something thats *not* JS, namely python, for interacting with a proper database, and would allow self-hosting or putting it online so people can share data and access in real time with others.
And because I'm horrible, and do things the wrong way for convenience, I could use tailwind.
Because it pisses people off.
How easy (or hard) would it be to recreate a basic functional clone of the core of airtable?
I don't know, but I have feeling I'm going to find out!1
I say, I say, I say, how many hours does it take to set up a smart light blub ?
Well, it just took me 6 hours to get 2 bulbs working with Alexa..
This involved bulb resetting without a hub, an Android tablet ( Without the correct level of OS to run the more advanced version of the Alexa APP or the smart blub app.. ), a laptop, a web interface, a wireless network, and lots of running up and down stairs..
It wasn't "easy as pie"..
It proved pointless registering with the smart bulb website, since it couldn't see the bulbs..
For a while the bulbs thought they was twins, and one would copy the other..
But one was always unresponsive when you wanted to chat to it..
After reset, which was buried in a long RPG style quest, all was kinda well. ( It now thinks there are 3 bulbs, but lets not worry about that.. )
Related link in case anyone needs this !
Factory Reset Philips Hue Bulb With No Hue Bridge or Hue Light Switch
How to grow in a start up as a developer?
For sure, the scale is low. Product is easy to understand. How to grow so that I can proudly say that I solved this business problem or at least sound like I solved something good?2
Excelling in my job depends on me understanding where the company has been burned in the past. Once I figured out those places, it's easy to see why we prioritize certain decisions.
It's so easy to use for-each loops instead of if-else chains, yet when I write a system in for the first time, I always find myself doing the latter.
"It's placeholder code" saves me every time as long as I rewrite it later.9
VS Code terminal is so bad... it is basically the worst part of VS Code; the devs can never fix it
The terminal in VS Code breaks for me all the time; it is so easy to break it; all it takes is change the size of the terminal window and bam, it is broken
The devs should either fix their shitty terminal or remove it entirely because it confuses people; I literally see wrong output from my program because of their terminal1
ps: I'm not a natively English speaking person, please forgive tipos and other pedantic writing mistakes.
On another example of regressing for advancemente, the interested reader should read about performance differences and justification for it between grep and perl's regex implementation.
Utility libraries, because I actually get to see my life improve because I have them. Creating new projects becomes easier because I put parts I reuse somewhere else.
There was an old config file generator/manager I kept using for a while, some string conversion libraries between formats, some REST/WebRTC API wrappers, I have a web audio API I create tunes with in various projects. CI/CD scripts for laziness so I never have to know how to set anything up again. Lately the thing I'm most happy about is I turned some free text saving service into a makeshift database and it's been working well for about half a dozen projects now. Wouldn't handle large amount of users but can't beat free and easy.
I also find merit in prototypes/old projects, because I can reference random things I did in them in newer unrelated projects. Things too small to warrant their own utility library, argh!
I tried Appgyver over christmas, since it promised easy front-end (no-)coding I was looking forward to getting rudimentary frontends done faster.
Well, the first real project that I wanted to start didn't compile anymore (internal error from the service), the page told me to reload and try again.
It failed again... And again.
Fine with me, I only spent 10 minutes on the project at this point.
I then searched for the bugreporting page and found it. The sad thing is that when I wanted to open a ticket the server crashed. It didn't even return a HTTP error, just a JSON saying there is a error and a GUID.
I have to say, if a Dev decided to have holidays without new issues that's one way of getting that done.3
Does anyone else also feels like "I knew it why I didn't try this way, this was easy" after using stackoverflow1
Im so bored that I downloaded a 2d maze game on my phone...
I know it's cry very easy to solve since just need to go backwards but somehow still play it...
How to Jitter Click and Increase Clicks per Second?
If you are a gamer who wants to increase clicks per second speed, you must learn how to jitter click. Here, I am sharing an easy step-by-step process of jitter clicking and how to master the technique with practice.
For those who are new to the concept of jitter clicking, let me first tell you about that.
What is Jitter Clicking?
Jitter Clicking is an advanced mouse-clicking technique that gives you more clicks per second on the CPS test ( https://cpstest.pro ) than the regular way of clicking. You use your forearm and wrist muscles to create vibrations in the hand and use it to make more clicks in less time.
How to Jitter Click? Step by Step Guide
If you want to learn jitter clicking, follow the steps provided below.
1. First, hold the mouse properly. A claw grip works the best for jitter clicking.
2. Start by making for forearm stiff and putting all the stress on the wrist muscle.
3. Use the stressed wrist to create vibration in your hand and the index finger.
3. The index finger must be on exactly the top of the mouse button keeping it just a few millimeters away.
4. The vibration in the finger will make the mouse button click way faster than normal
That's it. You've successfully learned how to jitter click. It might seem a bit difficult in the beginning, but after you practice it enough, you'll be able to master jitter clicking within a week.
Among all my gamer friends who started using jitter clicking, most of them have seen significant improvement in their clicking speed. Those who had around 6-8 CPS earlier, started to get 11-12 CPS within a week of jitter click practice. A few of them went even beyond that with 14 clicks per second.
According to stats, jitter clicking is recommended as the fastest way of clicking.
Clearly, it is a good technique but those who are starting to jitter click should take proper precautions as the method involves unusual muscle movements and may lead to wrist pain, cramps, or even carpal tunnel syndrome.
It is advised that gamers take sufficient breaks while jitter clicking and not perform it for long time periods in one go.
Keeping this in mind, I hope you'll definitely get better clicks per second using the jitter click technique.4
I used to be excited from new languages coming out, new frameworks, etc...
ive been iny comfort zone using the same tech stack for 3 years tho. at this point trying to learn something new feels like "ew why isnt it as easy as X"1
Let's exclude some files from our coverlet coverage test!
Sure! That's easy, just remember to pass this super short, understandable, and rememberable command-line argument:
You're fucking kidding me, right?
It's 2022 and tools are still using PowerShell syntax... just kill me1
which is the best cloud provider for a complete beginner (user/dev) in terms of community support, employer preference and user-friendliness?
i know that understanding the tech and concepts behind it matters more than getting familiarized with a specific platform, but i'm looking to build a more diverse profile and have noticed many positions asking for AWS/Azure experience.
since i'll be starting from scratch, any provider with easy-to-follow documentation, online help and certifications that don't leave you broke (would have to pay myself, earn very less as a student from a third-world country, parents/current employer can't support) would work.9