Details
Joined devRant on 11/17/2017
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
-
First rant here!
So i just inherited this legacy application in my new job.
I started looking at the code and it just doesnt make sense!
What the fucking fuck!!16 -
I participated at a robotfight today. After I pushed the enemy outside of the ring, my robot started smoking.. but I had a blast anyway10
-
As a developer, sometimes you hammer away on some useless solo side project for a few weeks. Maybe a small game, a web interface for your home-built storage server, or an app to turn your living room lights on an off.
I often see these posts and graphs here about motivation, about a desire to conceive perfection. You want to create a self-hosted Spotify clone "but better", or you set out to make the best todo app for iOS ever written.
These rants and memes often highlight how you start with this incredible drive, how your code is perfectly clean when you begin. Then it all oscillates between states of panic and surprise, sweat, tears and euphoria, an end in a disillusioned stare at the tangled mess you created, to gather dust forever in some private repository.
Writing a physics engine from scratch was harder than you expected. You needed a lot of ugly code to get your admin panel working in Safari. Some other shiny idea came along, and you decided to bite, even though you feel a burning guilt about the ever growing pile of unfinished failures.
All I want to say is:
No time was lost.
This is how senior developers are born. You strengthen your brain, the calluses on your mind provide you with perseverance to solve problems. Even if (no, *especially* if) you gave up on your project.
Eventually, giving up is good, it's a sign of wisdom an flexibility to focus on the broader domain again.
One of the things I love about failures is how varied they tend to be, how they force you to start seeing overarching patterns.
You don't notice the things you take back from your failures, they slip back sticking to you, undetected.
You get intuitions for strengths and weaknesses in patterns. Whenever you're matching two sparse ordered indexed lists, there's this corner of your brain lighting up on how to do it efficiently. You realize it's not the ORMs which suck, it's the fundamental object-relational impedance mismatch existing in all languages which causes problems, and you feel your fingers tingling whenever you encounter its effects in the future, ready to dive in ever so slightly deeper.
You notice you can suddenly solve completely abstract data problems using the pathfinding logic from your failed game. You realize you can use vector calculations from your physics engine to compare similarities in psychological behavior. You never understood trigonometry in high school, but while building a a deficient robotic Arduino abomination it suddenly started making sense.
You're building intuitions, continuously. These intuitions are grooves which become deeper each time you encounter fundamental patterns. The more variation in environments and topics you expose yourself to, the more permanent these associations become.
Failure is inconsequential, failure even deserves respect, failure builds intuition about patterns. Every single epiphany about similarity in patterns is an incredible victory.
Please, for the love of code...
Start and fail as many projects as you can.30 -
This page doesnt look like much until I tell you it is written entirely in Clojure using a custom built HTML generator.9
-
Will add better photos in the comments!
A client of mine received an spoofed email from their domain. It was a
script with visual basic source code.
Maybe someone here can explain what the script does?
Client didn't opened the file!25 -
All the ++ counts are showing in binary... If this is an error I vote we keep it as a feature not a bug.3
-
Was super excited to get to ++1000 to finally get my cat. But just realized that you need ++1200 to get the white cat. :(8
-
Well that was a fun call I just had.
Owner of the company I freelance for: Hey I forgot to tell you something.
Me: What?
Owner: I bought you a plane ticket to fly to Puerto Rico. You're heading out in a month.
Me: What?! Why????
Owner: To set up cryptocurency mining rigs.
Me: Just because I know a bit about mining doesn't make me an expert.
Owner: We have $80k in our pocket in investments from outside parties, with another $20-30k on the way. You get 20% of the coins mined for as long as you manage it.
Me: So we're gonna set up several rigs, utilizing a b250 motherboard, g4400 CPU, 8GB of RAM and 10 GPUs each. We'll have AMD rigs for monero and Nvidia rigs for Ethereum and others. We'll use awesome miner for profitability switching on the fly. Each machine is probably going to be $5k each, possibly $4k with bulk discounts. We'll need at least 1500W per rig for power, 2000W to be safe, so we need to make sure we have ample power delivery to the mining warehouse.
Owner: I thought you weren't an expert?
Me: I'm not, but when there's money involved my motivation to Google goes into overdrive.28 -
Just before you, my fellow system programmer, scroll past this, let me say this:
🍬 The web is actiually simple. 🍬
Both HTML and CSS is declarative. It's all easy when you understand the concepts, learn how to be idiomatic and quit trying to do that imperative bullshit in languages that aren't imperative.
HTML is simple. You know the boilerplate: doctype, head, body, that's all. Just mark it up and do NOT look at it before you end, mark it up as it were article or something. The appearance is up to css.
CSS is simple. You may even forget bem or rscss, you're already a skilled software developer. Use common sense and your code-splitting and naming skills you gained reading The Code Complete or doing software development for years.
Forget mockups. Forget absolute positioning, forget setting width and height in pixels. Go to awwwards, find some inspiration. Draw some buttons and fields on paper with your good old pencil. Then go and write some css. Feel free to steal some shadows and transitions from codepen.
Read about 8-pixel grid system. Let every element push away from others by setting something like margin: 16px; and whoops! You've just got fully responsive and got great vertical rhythm without even using media queries!
Oh my god, do NEVER set width and height explicitly! Type something like button { width: 120px; } and bang! The entire web page is broken. Quit that shit. Let it resize as it should. It will resize itself to fit its contents.
HTML is by default ready for your template engine. That's how you receive data from server — as server-side rendered, plain old HTML page. On the other hand, the form element is the most axiomatic and simple way to send the data to server. That's how you send it — as plain old GET or POST that every webserver can handle.
All of there are true:
1. It's easy to get great 100% responsiveness without media queries.
2. It's easy to align items in row, it's just one line of css. Maybe two, if you still want elements to wrap, but want to use flexbox:
.parent {
display: flex;
flex-wrap: wrap;
}
3. HTML and CSS are fast by default.
4. You don't need mockups to achieve great visual experience. Mockups is imperative, web is declarative.
5. You may not even need JavaScript to make great website.
Go on, ask me a question about web! I'll ready to answer everything.21 -
Wow... I haven't done complex/algorithmic level coding for maybe 6 months (yes that's how mindless my day job usually is)...
Now I just finished part of the code for a scheduling app I'm doing just for fun... Though there is also a use case at work but I don't have the free time to think about problems at this level... -
You don’t appreciate how large a project really is until you have to write tests cases for QA, to cover most work flows.
God this is mind numbing, only half way there... I think 😰3 -
My boss isn't really a developer. He isn't part of the development team and doesn't know any technical details about the product. He doesn't want to code, "too much effort", he just wants to boss. But he wrote some php in the early 2000's and is really, really proud of his codecademy html/css badge...
And that makes him dangerous.
Today I hear him talk from behind his laptop: "Right, we have this page for creating management groups, but we can't edit them yet. I can fix that!"
This task is literally on the current sprint, but he doesn't know that because he doesn't attend scrum meetings and ignores everything people say to him.
Me: This smells like probable cause, let's look with suspicion over his shoulder.
Boss:
"OK, right-click create.blade.php -> copy.
then right-click directory -> paste.
now just rename file to edit.blade.php!"
I start walking to the office kitchen.
Boss mumbling in the background:
"Now all I need to do is just copy the whole method in the controller, change the post url in the form, and modify the <h4> at the top, so it says edit instead of create."
Boss, looking at me now:
"This is so easy... creating and editing is almost the same thing, you can just copy paste all the code from one template to the other! I don't understand what you developers are always complaining about!"
Me: *Hands him a roll of paper towels*
Boss: "What is that for?"
Me: *points at code*6 -
I am on my way home from an 8.5 hour non-stop call with one of our software suppliers...
How to you guys handle situations like that?
Consentrating became very difficult at the end to be honest.
And if it my teammates would not have been there (they gave me food, sth to drink and filled my coffee cup) I would have snapt after 4 hours...
The only thing I feel capable of doing for now is to listen to extremly loud music9 -
Pretty late for week 86, but I just remembered my first paid freelancing web dev work.
While not my worst experience, it was a pretty horrible task given to me...
I was helping someone implement a new design on a pretty outdated (visually and technically) PHP site.
I was getting paid crap. The guy wouldn’t even let me look at the HTML, let alone touch it, so definitely no PHP work, either...
Literally the only code I was allowed to write was CSS. So, I’m supposed to be restyling, but I can’t change the structure at all, or even ADD CSS SELECTORS.
Fine, I’ll just make your site fragile as fuck by using nested relative selectors.
#main:nth-child(3) > div > div > div > button
As if that wasn’t bad enough, there were some pages...I shit you not...that had A DOZEN LEVELS OF NESTED TABLES.
WHY. DEAR GOD WHY.
For a simple checkout page.
So, on some pages I was literally trying to access elements through relative selectors, nested within levels and levels of tables. FFS
Needless to say, I did not work for him for long. Even if I wanted to deal with that crap, my time is much more valuable than what I was being paid. -
Holy mother of god, 100K!
Honestly what happened? Upvote sprees or something?!
I left devRant with 95K this morning 😱
I'll do a bigger rant later, just came out of work, most of the day went well but last hour was more stressful than anything so gonna go home (have a coffee on the way) now and prepare an emergency security blog article (something happened in the security/spy world).
Thanks peoples!24 -
Clearly right now... Just spent 2 days writing a minesweeper clone because I wanted the ability to undo.
It's almost done... aka 10+ hrs...21