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
Search - "lean"
-
How it usually goes:
1. Have an idea
2. Do about 3 of those things:
- sketch out a few diagramms of how it would work
- think of a name and buy the url
- estimate what you would have to buy and what it would cost
- make a project folder
- lean back, imagine life after the idea made you rich and famous
- write about 2% of the required code
3. Get distracted or don't have time to work on thr idea
4. Have new idea, repeat from 122 -
Manager: Why aren’t you working?
Dev: I am, I’m just not typing because I’m thinking an issue out.
Manager: Well what is taking so long? You haven’t written any code for like 15 minutes, you’ve just been doodling on your notepad.
Dev: I’m not “doodling”. I’m taking notes and trying to visualize the issue. It’s a complicated issue with application stat—
Manager: Well just simplify it then
Dev: ?
Manager: Instead of making it a complicated issue just simplify it and then it won’t take you so long. You’re likely overthinking it, I never spend more than 30 seconds thinking about any issue before coming up with a solution. That’s what makes me so effective at my job is my ability to be lean like that.
Dev: …this issue is a bit harder than deciding what to have for lunch26 -
Step 1. Get a large touchscreen monitor. Connect it.
Step 2. Modify the driver so touches don't actually cause clicks or anything.
Step 3. Let it play a sudden, loud BEEP instead. Increase the volume for each subsequent touch.
Step 4. Lean back and watch people learn that you don't like your screen being touched.15 -
Root interviews for a job
So I've been interviewing for fun lately (and for practice), and it's been going mostly well. This one company in particular looks interesting, and they seem to really like me. This morning was interview #4 with them; tomorrow morning is #5.
The previous interviews were pretty enjoyable, especially the last one where I interviewed with one of the senior devs who gave me his "grumpy old man rails quiz." He actually asked some questions I wasn't able to answer! (Mostly dealing with Rails' internals.) Also when showing me the codebase, there were a few things I hadn't seen before, so it's exciting that I'll actually be able to learn something if I sign on. We ended up talking for almost an hour past our allotted time, and we got along famously. He said he was very surprised I did so well on his quiz because most people don't. Everyone else I interviewed with so far has liked me and gave positive reviews, too.
I don't know if I want the job, but that's beyond the scope of this rant anyway. The real reason for this comes next.
My interview today was with the VP of engineering. It was more of a monologue, as he wanted to give me perspective to see if I actually wanted to work there, but it was still very much a monologue. He's an old white guy who seems to loves to drone, and he never seemed very happy when I responded, so I let him drone and drone. Good information though.
But he's very set in his ways in some regards, and two of them were pretty insulting. We never really talked about technicals, and he just assumed that since I wasn't old and graying that I was a junior dev. He said, and I'll quote: "We run a lean but senior team, so we typically only hire senior devs here. But the dev team is all old white men. There's no diversity in talent, age, sex, race, religion, etc, and I'm looking to change that." He made several more allusions to my more junior level, too. He made a lot of assumptions (like how I'm not comfortable with structure because I've been the only dev so often) and got annoyed when I countered them.
I realize he has no idea of my skill level -- even though he should if he was listening to his team -- but to just assume that I'm not talented because I'm young, and bloody hire me just because I'm female? I don't want to be your diversity hire, old man. 🤬
So I'm feeling angry.
I might still take the job because the it offers considerable benefits over where I'm working (despite being quite happy here), but it will absolutely be despite him.rant i don't want to leave my job sexism but i want to leave the desert and the two are married ageism am i really going to tag this ageism? guess so 🙁 diversity hire interview31 -
Manager: I read an article today
Dev: oh here we go….
Manager: We must pivot to only functional programming, which means only using functions instead of classes
Dev: Actually functional programming is a bit more nuanced tha—
Manager: Any use of classes going forward is not allowed. Everything must use functions! Classes are an outdated way of programming, using classes is why we continue to miss our deadlines. Functional programming is lean, classes are waterfall.
Dev: What about the libraries we use? Many of those use classes
Manager: Wrap them in a function then, that way they are pure which is one of the requirements of functional programming. You would know that if you spent as much personal time as I do keeping up with the times.34 -
In our office, everyone is placed so that we have a wall behind us. Initially, there was enough room behind us so that we can walk just fine.
Everything was fine till our manager didn't start making us some random visits and standing behind us just looking at our screens and making us feel unpleasant.
So one day we moved the tables so there is almost no room behind us. And we are aligned in a row with no space between the tables. Now if the manager decided to do it again he would have to struggle his way behind us.
Few days passed by and our manager finally showed he saw what we did, didn't say anything. It was clear that he wasn't happy about it. He tried to lean himself over the monitors to take a look but that was just not so as "good" as standing behind us...
A time passed and one day when we came to work we saw the tables moved forward some 15-20cm just enough to be able to move behind. Almost immediately we pulled them back as they were before.
We moved back and forward already few times and are currently playing cat and mouse with our manager.
Noone is saying anything just the tables are moving every 2-3 days or so. Let's see who is going to give up first hahaha13 -
Dude, FUCK automated bathrooms.
First of all, what the hell is so complicated about making a motion sensing faucet that works? Why does it *need* to be motion sensing? I stand there for 5-10 seconds with my stupid soapy hands extended, waiting for a squirt of the divine liquid.
And then the immediately following experience isn't much better. Motion sensing paper towel dispenser. The first go works fine, but it always dispenses half of what you need to get your grimy paws dry. So you go in for seconds, and it just flat out ignores you. Leaves you on read. You flap your pathetic noodle arms at it again. It isn't happening. Please wait 3-5 business days.
Oh, and god forbid you forget to cover the automatic toilet with a few wasted squares. Lean into a shit ONCE and you've just been prematurely flushed. Your ass is misted with the cold, unforgiving equivalent of an automatic insult.
Asshole design12 -
Startup: let's improve on our MVP and build an actual website app.
Me: ok.
[go through 2 weeks discovery and planning stage]
Manager1: love working with you. You explain and work in a really professional manner.
[MVP gets built in 2 months, I'm the only dev designer devops throughout]
Manger1: Omg love it! Wait till the other manager sees it. I knew you were right person for the job.
Other users: oo cool. I love features x, y, z.
[two days later shows to Manager2]
Manager2: x doesn't work, feature you is not useful and doesn't work... Hate it. I think we'll move you to another project.
Me: (woah that escalated quickly meme plays in my mind)
Me: [explaining MVP, lean methodology, your internal decision making processes]
...
Manager2: Yeh we want you to not work on any development work (even though those are your skills and extensive knowledge etc) we need you to do admin tasks (that have nothing to do with product or coding etc)
Manager1 and employees: 😲 wtf
Me: I quit
- - -
Now they are struggling in every way possible and don't have enough funds to hire another person close to what they need to help them.4 -
Hesitated for a while before posting this, as I don't like to whine in public but this should be therapeutical
Beware, it's a #longread
Years ago, I thought about how cool it'd be to have conversation-based interactive fiction on my phone. I remember showing early prototypes to my ex in 2012. It took me over 2 years to build up the courage to make it my priority and to take time off. FictionBurgers.com was born.
A few weeks in, a friend of mine forwarded me a link to Lifeline. I was devastated. I literally spent 2 days cursing my past self for not making a move sooner.
I soldiered on, worked 7 months straight on it. Now the tech is 90-95% finished, content is maybe 60% finished and I just... gave up. Every other week now, similar projects are popping up. I'm under-staffed and under-financed compared to them. Beyond the entertainment space, "conversation-based" is hot stuff in 2016, and I still can't seem to know what to do with what I have.
I feel like I had this fantastic opportunity and squandered it, which makes me miserable.
Anyway, just so you get some cheese with my whine, here are a few lessons I learned the hard way:
Lesson #1 : Don't go it alone. I thought I could hack it, and for over 7 months, I did. But sooner or later, shit gets to you, it's just human. That's when you need someone; just so that their highs compensate your lows and vice versa. Most of the actual writing was done by a freelancer (and he did AMAZING WORK, especially considering that I couldn't pay him much) but it's not the same as a partner, who's invested same as you.
Lesson #1.5 : Complementary skills. Just like my fiction project failed because I was missing a writer partner, my fallback plan of getting into conversational tech hit the skids for lack of a bizdev partner. It's great to stick among devs when ranting, but you need to mingle with a variety of people. Some of them are actually ok, y'know :)
Lesson #2 : Lean Startup, MVP. Google those terms if you're not familiar with them. My mistake here (after MVPing the shit out of the tech) was to let my content goal run amok : what made my app superior to the competition (or so I reasoned) was that it would allow for conversations with multiple characters! So I started plotting a story... with 9 characters. Not 2 or 3. NINE FREAKING CHARACTERS! Branching conversations with 9 characters is the stuff of nightmare -- and is the main reason I gave up.
Lesson #3 : Know your reasons. I wasted some much time early on, zig-zaging between objectives:
"I'm just indulging myself"
"No, I really want it to be a project that pays off"
"Nah, it's just a learning opportunity"
"Damn, why is it bothering me so much that someone else is doing the same thing ?"
"Doesn't matter, I just mine finished"
"What a waste of time !!"
etc etc
And it's still a problem now that I'm trying to figure out what to do!
So anyway, that's my story, thanks for readin'
Check out chatty.im/player/sugar-wars if you want to test the most advance version.
Also, I've also tagged this #startupfail, if any of you fine people want to share the lessons you've dearly paid to learn!13 -
Beginner: I wrote 1,000 lines of code!
Intermediate: I deleted 1,000 lines of code!
Expert: I prevented code from being written!1 -
Once I had to do a 'hands on' pair programming session for a position I applied for... Together with the lead dev we would switch coding every 15 minutes It was somewhat of a horror story...
The assignment was to implement an password reset flow, connecting it to the api and then handling the entire password reset flow, in Angular becahs ye know has to be Angular...
After drafting the ui and setting up the click events, I wanted to hookup the api calls, but then it was time to switch around...
The fucktard dev first started to adjust my classmappings to be more in line with his preference, without touching the css classnames... Ok... Micro managing ... Check...
So after breaking the styles, he wrote the fetches to the api endpoints and that was his 15 minutes of shame...
I continued only to find out the endpoints we were using had errors in them and would not return anything workable...
The dev said he'd tested the endpoint before and it worked, but clearly it didn't...
After about an hour of going back and forth trying to get this to work he got a call from a client because server was down (surprise), he excused himself and had to prioritize on this, running out and leaving me there for the remaining morning ...
I just sat there waiting for the HR checkout talk, only to lean towards rejecting the position...
Fucking waste of time, and in the end the feedback was they doubted MY TECHNICAL SKILLS ... And wouldn't make me an offer 😂👍 nice story bro...
K THX BAI!7 -
Managers: wE wAnT tO bE LeAn aNd MoVe FaSt As PoSsIBLe wiTh NeW FeAtUrEs
Same Managers: Can you make this icon 2 pixels smaller?! Shift this element left?! Swap out this icon?! Use a different color here?! A perfect feature and design is critical!!!!!!
FullStackClown: You can either be lean and fast, or be fucking nitpicking clowns 🤡 about this stuff and slow us all down. Choose one.
Managers: ...
FullStackClown: Sit down and shut up7 -
Company: We have a fast paced and exciting environment!
Translation: Management doesn’t plan at all and changes their mind constantly so everything is done in a rushed last minute fashion. The excitement stems from a constant need to look over your shoulder in anticipation of the knife in your back after you are blamed for some issue inevitably arising out of the panicked fashion in which the business constantly operates.9 -
What's the difference between a wasp and single loose hair?
Apparently none till the wasp stings :/
Yesterday I thought I had a loose hair on my neck.. ok, I shrug it off.. later again the creepy feeling.. shrugs off..
I continue to work, sumberged in code, wanting to find the fucker (bug, not the wasp/hair).. lean in to the monitor... 10 cents away from the screen... Ok, maybe that's it! Feels the hair on my back, near shoulderblades again... shrugging again more violently to get it further down to fall out.. nothing.. ok, got the bug, threw myslef back in the chair with substential force & BAAAAM!!! Motherfucking hair bit me!! O.o
I scream in horror & on top of the lungs (it was late, after work hours so I didn't expect anyone else still at the office) PROKLETA PRASICA (roughly translated to goddamn female swine).. I previously saw some green bug flying around the office and I thought that nasty thing bit me (didn't know they bite soo, much more horror for me).. O.o
Anyhow, I jump up from the computer and see my coworker looking at me all baffled.. I proceed to franticly take of my headphones and hoodie..thinking about wtf should I do now, I cannot get undressed in front of him (not for my sake, bra is the same as top of the bathing suit for me, but still..I don't want anyone suing me for impropper behaviour of undreasing in front of coworkers..), how the fuck should I get to the toilet?! O.o
C: Are you ok?!
M: Um.. sth bit me..wtf?!
C: There was a wasp flying around somewhere some time ago.. are you alergic?!
M: um..not sure, I don't think so..we'll see soon..
I proceed to the WC, to take off tshirt & check/kill off the fucker.. on my way there (walking funny to not press the hair to my body again) I got another surprise, another coworker was working late..
C2: Are you ok?! O.o
M: yeah, sth bit me, probably a wasp..
Ok, finally on the loo..ok, do not lock self in in case it escapes and you need help.. don't even shut the door. Check.. standing between the doors I contemplate on how the fuck should I take my tshirt off without angering the fucker even more and getting bitten again.. O.O
I lifted the tshirt up my back to let it out.. nope, not there..the creepy felling of buzzing around between my shoulder blades continues.. crap.. what to do?!
I stood there & contemplated the task.. ok, roll up the tshirt to the shoulder blades, not against the body (duh) to prevent further stings..tighten the fabric, so it cannot escape, quickly remove the band from the body.. done..reversed the tshirt and straightened it.. bzzz... Fucker fell somewhere.. Dafaq?! Was it really just a wasp?! If yes, no problem...but what if coworker was wrong and I got bitten by that nasty green whateveritsname bug?! Eeeeewwww! Is it poisonous? Gotta find it & kill it for good.. waited a bit, than saw a goddamn wasp crawl from under the toilet.. wasp!! Yess!! Stopm stomp fucker!!
I get dressed & go back to my desk..
C: Did you terminate it?!
M: Yup, fucker went on a toilet paper trip down the drain!!
I sit down, starting to get my headphones back on and proceed to work.., but before I could, one last gem:
C: CTO would say, thank god it didn't sting you in your finger cuz you wouldn't be able to type anymore..
M: O.O so true hahhahahaaa
Disclaimer - I like animals, but I freakking hate wasps..especially if they get under my tshirt to sting.. :/7 -
I studied at an Art School and my co-ordinator liked to screw with students. He set up a short-notice meeting with himself, myself and an audio guy (to work on our game).
I didn't know any of this however and my co-ordinator opened with: "He's a photographer looking for a lean Male to do a nude art shoot."....... I'm pretty confident person and I thought he was serious so I agreed to it.
He wasn't serious and it became an interesting start to the meeting.1 -
Once upon a time, there were a restaurant called "iEat.tech.com".
It was a small single-location place, where the sufficient number of patrons could be served by the cozy number of employees.
In fact, headcount was so lean that the cook was also the one who washed all the dishes.
But then came the suits and their "VC"(daddy) money and scaled shit up.
Soon, there were so many patrons that the dishes started to pile up the sink, never washed.
"We need someone to wash the dishes!" said the cook
"Fuck you, you wash the dishes!" said the s*its
Naturally, the cook left soon after.
The s*its had a problem now. They could not replace the cook fast enough - all other cooks were either young, inexperienced and mediocre (but did clean the dishes), or refused to waste their time on the sink.
So the suits did what $*its always do - they got a fucking consultant. Who told them to get a fucking dishwashing machine and billed them the GDP of Ireland.
The s*is, of course, did not want to buy a dishwashing machine. "Our fucking process is too fucking disruptive for us to use a fucking store-bought mass-produced metal servant!" (s*its don't know what "machines" are. For them, it's all in terms of "servants", employees and machines alike).
So the s*its hired an engineer to "solve the fucking dish problem, once and for all".
The engineer quickly started measuring and drawing and calculating. The engineer was about to prepare a budget when the s*its came screaming "What the fuck are you doing? There is a fucking pile of dishes in the sink!"
The engineer replied that "I'm designing the machine!", to what the s*its responded "don't bring me fucking problems, bring me solutions!" (or some other s*it blabber)
So the engineer quickly designed an efficient dishwashing assembly line to be done in half the time most people would. And then went back to designing the machine.
But the s*its were having none of it. They kept expanding and expanding and doing what they could so that the engineer never had a moment to work on the machine. They dit it so surreptitiously that no one barely even noticed, but one day they were paying a team of engineers to be fucking human dishwashers.
Now replace "dishes" with "Jira tickets" or "quick fixes" or "tiny changes" and fix other terms accordingly.
Fucking s*its.10 -
So I started new job, full js dev but new project requires python backend. 0 prior python exp but ready to lean and learn. Got my first assignment. Supportive coworkers made me a death clock counter2
-
@dfox and @trogus
I’m quite into lean development, sorry... “Lean Development” and I can’t help but notice your users are trying to tell you something by their actions.
I keep skimming past posts where a user is @‘ed in the main rant.
Then either themselves or someone else will @ those people in the first or second comment as @ing doesn’t work on the main body.
I understand you have your reasons but in the spirit of lean, MVP, build measure learn etc etc
Shouldn’t you accept the behaviour of least resistance and implement the functionality in the main rant body?
Because you’re not stopping anyone from @ing folk, you’re just making it more annoying to do so.
This meme says it all23 -
Networking class. We're learning to configure switches, or at least trying to. A full hour goes by and the thing is not making a single beep. I frustration we lean back. Then my friends sees it. We never plugged in the power cable.6
-
So I'm sick. But my inner coder tells me that I could atleast do some basic design for my project.
So I go to sit down at my home computer and immediately feel my nose literally start dripping of snot as soon as I lean in to sit. So lile any normal man i take a tissue, wipe and blow my nose and it's now time to login on the computer.
*Wrong password*
Oh, I've must been to quick
*Try again*
*Wrong password*
Wtf?!
*Slowly type my password in*
*Wrong password*
*Fuck it, show password*
A space is missing.
Alright I'll just add it in then.
*Tap spacebar*
*Nothing*
*Tap harder*
*Nothing*
So I rip out the space bar and find a two little drops of snot that must have juuuust fallen between the cracks.
I tried to wipe it away and put the space bar back, but it's dead. :(5 -
For almost twenty years I have sheltered in the protective, safe, warm bosom of Debian. For a long time, it had the largest body of available software of all the distros, and by far when Ubuntu rose to prominence. So I used Ubuntu for years for the depth of package availability, and because if something esoteric was released, it would almost certainly come out first on Ubuntu, and sometimes only on Ubuntu. I was happy. Things were good.
But over time, Ubuntu and even Debian started to lean harder and harder on gnome, which I've always hated, along with all desktop environments, as they obscure the system from the user, and introduce graphical layers of abstraction, so the actual job of getting things done becomes a black art, hidden behind gnome-specific tools. This is my preference, and It's been disheartening in recent years to see the direction the desktop appears to be taking.
Then I joined devrant in 2017, and until then, I had heard peripherally about Arch, but never more than that. I had not heard of Manjaro at all. People started posting success stories and happy screenshots, and I was intrigued.
In 2018 I built a windows machine to use for parsec streaming games that wouldn't run on my linux rig. For not a great deal of money, I built a solid machine that's unequivocally better than any machine I've ever used, and installed windows on it. For a while, I was pleased. I had the best of both worlds: a windows box to stream some games from, and a linux desktop for everything else.
But after a couple months, as proton matured, I found fewer and fewer reasons to use my windows machine. My use of it declined to where I was last week: it had been months since I'd even powered it on. It was the most powerful machine I've ever used, and it was just collecting dust behind the TV in the living room. The full realization came to me while I was fighting a battle in the Gnome Takeover War, and I realized: I don't have to do this.
I pulled the newer machine out from behind the TV and installed Manjaro architect edition on it. The flexibility in the install was staggering. I am using nilfs2 for my /boot and / partitions: an option that Ubuntu has never offered. Normally they just default you into the garbage ext4 filesystem, and if you can dig deep enough, you can install with something else, though you have to really want it, in my opinion.
But Manjaro has been a dream-come-true. Pacman is easily the best package manager I have ever used, and pamac's intuitive and easy commands are a great view into AUR. Booting into the virtual console instead of a display manager has been wonderful too. On Ubuntu, I had to disable systemd's version of runlevel 5 to even get it working. But I just popped my xrandr script into my .xinitrc, and X opens with startx in less than a second. On Ubuntu, it takes about 5-10 seconds.
This has nothing to do with Manjaro, but I also switched to Radeon for this install, and I couldn't be happier about that. No more "installing" nvidia's drivers.
No more gnome. No more PPAs. No more settling. I am a Manjaro user now. Full stop. Thank you, devrant, for bringing it to my attention.11 -
Being a good developer is knowing how to balance writing perfect code with getting shit done. Working lean means half your stuff in going to die anyway, so fighting for the corpse just wastes everybody's time5
-
Structure: decades of programming in too many languages to enumerate. I lean functional, but only when the language doesn't fight it. No matter what I'm doing, my code is immutable in practice, if not paradigm.
Syntax: No one thing in particular. I code differently depending on the language.
When I start learning a language, I'll find the standard style checker and create a project where I write an example of every single rule.
The end result is generally a quick intro to the language and a bonus understanding of the hot sports opinion in said language. I call this an ocean boiler.
I lean heavily into autoformatting because I've worked on too many projects to care, and I have a general expectation that something which is important enough to make a code standard is important enough to be enforced in tooling. I'd rather spend my time solving problems that thinking about stylistics.5 -
Never had one due to this trick I borrowed from an old friend.
So we all know about those meetings where its all crap flying around right?.
First go in there with your alarm clock set on vibration every 7 minutes(trust me on this-makes you look important and you ought to be somewhere else)
Actually the alarm is a reminder that you need to bring yourself back online.
At this point just listen to the speaker for a couple of seconds(especially if its marketing dept) and being the engineer your are; rephrase parts of their presentation in a question-comment hybrid( at this point you're the wisest looking person in the room)
Now go back to thinking about that pizza slice you left in the fridge as they discuss the "lean production" methods that they can use based on "your opinion"..
To more happy meetings..cheers3 -
I wanted to be a dev when the only on campus job that paid more than minimum wage was titled "Web Developer". It paid 13 bucks / hour. AWYEAH.
-
Wanna have some fun at work.
Print out a beautiful sheet of voice commands for the printer.
Lean back and wait :)2 -
Top advice to give to a new dev? Go back in time and download devRant, then buy a rubber ducky. Yes, I finally got mine 👍🏻3
-
Okay you bastards ya got me: I fucking enjoy using Linux as my dev environment.
There, I SAID IT -
BUT DON'T THINK FOR A SECOND IT MEANS THAT I STOPPED HATING IT
Oh the fucking love hate relationship to fucking Linux.
"Hey, ihatecomputers! How many hours per year did you spend fixing internet connectivity issues on Windows?" you ask. Well, close to fucking 0 you goddamned imbecile. But on Linux? I don't even want to talk about it.
And what about that time when I wanted to connect my bluetooth headphones so I could listen to music while studying? Well, by the time my headphones were connected to my machine (usually a one second operation) I had no time left for, you know, actual studying. Oh my god, it's the most trivial fucking thing.
Well, at least that particular issue got solved.
Unlike that fucking Ethernet connection which has been fucking out of commission since I started using fucking Linux. Wifi works just well enough to make it not worth pouring more time into troubleshooting that shit, but just barely though because my wifi IS FUCKING DOGSHIT ON LINUX
...
But fuck me if it isn't it the most lean thing ever! It's the goddamned opposite of bloated. So smooth and snappy. And free as in slurred speech, or whatever. It makes me happy. When I'm not seething with rage, that is.
Yeah I guess that's it, thanks for tuning in.
~ihatecomputers16 -
Worst collaboration experience story?
I was not directly involved, it was a Delphi -> C# conversion of our customer returns application.
The dev manager was out to prove waterfall was the only development methodology that could make convert the monolith app to a lean, multi-tier, enterprise-worthy application.
Starting out with a team of 7 (3 devs, 2 dbas, team mgr, and the dev department mgr), they spent around 3 months designing, meetings, and more meetings. Armed with 50+ page specification Word document (not counting the countless Visio workflow diagrams and Microsoft Project timeline/ghantt charts), the team was ready to start coding.
The database design, workflow, and UI design (using Visio), was well done/thought out, but problems started on day one.
- Team mgr and Dev mgr split up the 3 devs, 1 dev wrote the database access library tier, 1 wrote the service tier, the other dev wrote the UI (I'll add this was the dev's first experience with WPF).
- Per the specification, all the layers wouldn't be integrated until all of them met the standards (unit tested, free from errors from VS's code analyzer, etc)
- By the time the devs where ready to code, the DBAs were already tasked with other projects, so the Returns app was prioritized to "when we get around to it"
Fast forward 6 months later, all the devs were 'done' coding, having very little/no communication with one another, then the integration. The service and database layers assumed different design patterns and different database relationships and the UI layer required functionality neither layers anticipated (ex. multi-users and the service maintaining some sort of state between them).
Those issues took about a month to work out, then the app began beta testing with real end users. App didn't make it 10 minutes before users gave up. Numerous UI logic errors, runtime errors, and overall app stability. Because the UI was so bad, the dev mgr brought in one of the web developers (she was pretty good at UI design). You might guess how useful someone is being dropped in on complex project , months after-the-fact and being told "Fix it!".
Couple of months of UI re-design and many other changes, the app was ready for beta testing.
In the mean time, the company hired a new customer service manager. When he saw the application, he rejected the app because he re-designed the entire returns process to be more efficient. The application UI was written to the exact step-by-step old returns process with little/no deviation.
With a tremendous amount of push-back (TL;DR), the dev mgr promised to change the app, but only after it was deployed into production (using "we can fix it later" excuse).
Still plagued with numerous bugs, the app was finally deployed. In attempts to save face, there was a company-wide party to celebrate the 'death' of the "old Delphi returns app" and the birth of the new. Cake, drinks, certificates of achievements for the devs, etc.
By the end of the project, the devs hated each other. Finger pointing, petty squabbles, out-right "FU!"s across the cube walls, etc. All the team members were re-assigned to other teams to separate them, leaving a single new hire to fix all the issues.5 -
I feel like the web frontend landscape has gone to hell...
It used to be a priority to develop lean front end applications that load fast and work the same on most devices. If resources are required you try to share them. I have always liked the way this was solved using CDN.
Proper workflow: include some small libs you might need, script your interactions, test site, deliver.
And now our friends of the Javascript community have discovered the nuclear science called npm... It started off as this great benefit allowing frontenders to complete entire projects in the language they know and love but I feel like it has grown into an abomination that produces bulky applications with more boilerplate configuration than actual active code...
Surely I can't be the only one who is completely fed up with the direction this is going? Is anyone else looking for a lean way of developing javascript again using only a couple of small libs instead of those monstrous frameworks.
I have even considered to develop a library that makes it easy to develop with CDN (and dependencies) in mind but I don't even know if it will be worth it as more and more people tend to move away from it.
I'm sad10 -
This one ticked me off because of the sheer rudeness of a demand they made of me. I had been building a personal freelance brand around myself and my skills for many years. I had in the prior 3 years developed it from a freelance to a lean agency model. That was running in parallel with full time work and the FT employer was happy to allow it. Eventually that employer downsized me and almost everyone else on staff. But they liked me and gave me mini-projects to do on a contract basis. I began interviewing for FT work with other companies.
One agency I applied at gave me a phone screen interview. The main hiring person was also an investor in the agency. He noted my lean agency and said that a second interview would be contingent on my dropping my clients that I was working for on my own time, disposing completely of my personal brand, and even giving up my domain name.
I told him I’d think about it. But the more I thought about it the more angry I got about such a stupid request. Why does this new company I don’t even know I will like working for get to tell me to abandon my “Plan B” option for if I quit or they decide to lay me off?
They never called back but I wished they had so I could have had the satisfaction of telling them no.2 -
My advisor: Can you teach Lean to these juniors?
Me: When shall we start?
Him: In two weeks.
Me: Sure.
And that's how I learn a new language in two weeks!5 -
A friend of mine just told me his job made his company start "Lean Six Sixma" training which is basically a massive scheme that makes you get a karate belt in common sense that you apparently don't have.2
-
EoS1: This is the continuation of my previous rant, "The Ballad of The Six Witchers and The Undocumented Java Tool". Catch the first part here: https://devrant.com/rants/5009817/...
The Undocumented Java Tool, created by Those Who Came Before to fight the great battles of the past, is a swift beast. It reaches systems unknown and impacts many processes, unbeknownst even to said processes' masters. All from within it's lair, a foggy Windows Server swamp of moldy data streams and boggy flows.
One of The Six Witchers, the Wild One, scouted ahead to map the input and output data streams of the Unmapped Data Swamp. Accompanied only by his animal familiars, NetCat and WireShark.
Two others, bold and adventurous, raised their decompiling blades against the Undocumented Java Tool beast itself, to uncover it's data processing secrets.
Another of the witchers, of dark complexion and smooth speak, followed the data upstream to find where the fuck the limited excel sheets that feeds The Beast comes from, since it's handlers only know that "every other day a new one appears on this shared active directory location". WTF do people often have NPC-levels of unawareness about their own fucking jobs?!?!
The other witchers left to tend to the Burn-Rate Bonfire, for The Sprint is dark and full of terrors, and some bigwigs always manage to shoehorn their whims/unrelated stories into a otherwise lean sprint.
At the dawn of the new year, the witchers reconvened. "The Beast breathes a currency conversion API" - said The Wild One - "And it's claws and fangs strike mostly at two independent JIRA clusters, sometimes upserting issues. It uses a company-deprecated API to send emails. We're in deep shit."
"I've found The Source of Fucking Excel Sheets" - said the smooth witcher - "It is The Temple of Cash-Flow, where the priests weave the Tapestry of Transactions. Our Fucking Excel Sheets are but a snapshot of the latest updates on the balance of some billing accounts. I spoke with one of the priestesses, and she told me that The Oracle (DB) would be able to provide us with The Data directly, if we were to learn the way of the ODBC and the Query"
"We stroke at the beast" - said the bold and adventurous witchers, now deserving of the bragging rights to be called The Butchers of Jarfile - "It is actually fewer than twenty classes and modules. Most are API-drivers. And less than 40% of the code is ever even fucking used! We found fucking JIRA API tokens and URIs hard-coded. And it is all synchronous and monolithic - no wonder it takes almost 20 hours to run a single fucking excel sheet".
Together, the witchers figured out that each new billing account were morphed by The Beast into a new JIRA issue, if none was open yet for it. Transactions were used to update the outstanding balance on the issues regarding the billing accounts. The currency conversion API was used too often, and it's purpose was only to give a rough estimate of the total balance in each Jira issue in USD, since each issue could have transactions in several currencies. The Beast would consume the Excel sheet, do some cryptic transformations on it, and for each resulting line access the currency API and upsert a JIRA issue. The secrets of those transformations were still hidden from the witchers. When and why would The Beast send emails, was still a mistery.
As the Witchers Council approached an end and all were armed with knowledge and information, they decided on the next steps.
The Wild Witcher, known in every tavern in the land and by the sea, would create a connector to The Red Port of Redis, where every currency conversion is already updated by other processes and can be quickly retrieved inside the VPC. The Greenhorn Witcher is to follow him and build an offline process to update balances in JIRA issues.
The Butchers of Jarfile were to build The Juggler, an automation that should be able to receive a parquet file with an insertion plan and asynchronously update the JIRA API with scores of concurrent requests.
The Smooth Witcher, proud of his new lead, was to build The Oracle Watch, an order that would guard the Oracle (DB) at the Temple of Cash-Flow and report every qualifying transaction to parquet files in AWS S3. The Data would then be pushed to cross The Event Bridge into The Cluster of Sparks and Storms.
This Witcher Who Writes is to ride the Elephant of Hadoop into The Cluster of Sparks an Storms, to weave the signs of Map and Reduce and with speed and precision transform The Data into The Insertion Plan.
However, how exactly is The Data to be transformed is not yet known.
Will the Witchers be able to build The Data's New Path? Will they figure out the mysterious transformation? Will they discover the Undocumented Java Tool's secrets on notifying customers and aggregating data?
This story is still afoot. Only the future will tell, and I will keep you posted.6 -
Are there many people out there like me who don't subscribe to the whole "software to help you write software" malarkey? Resharper being a big one where I work!
Just give me a nice lean code editor.12 -
It’s throw back Thursday!
Back to 1979... before the time of the red dragon book compiler book, (forgetting about the green dragon book) ... there was a time where only a few well written compiler and assembler “theory” books existed.
What’s special about this one? Well Calingaert was the co patentor of the OS/360. .. “okay soo? ... well Fred Brook’s Mythical Man-Month book I posted the other day. Calingaert is basically the counterpart of brooks on the OS/360.
Anyway, the code is in assembly (obviously) and the compiler code is basic.
Other than this book and from my understanding 2-3 other books that’s all that was available on compilers and assemblers as far as books written goes at the token.
ALLL the rest of knowledge for compilers existed in the ACM and other computing journals of the time.
Is this book relevant today, eh not really, other than giving prospective, it’s a short in comparison to the red dragon books.
If you did read it, it’s more of a book that gives you more lecture and background and concepts.. rather than here’s a swath of code.. copy it and run.. done.. nope didn’t happen in this book.. apply what you lean here10 -
My day:
5:30AM - 2yo son wakes me up, I send him back to his bed
6AM - wakes me up again, gotta grab a coffee
7:30AM - leaving towards the office
8:30AM - finally arriving to the office, after horrible traffic.
*continue working on major schema change I started yesterday*
12:30PM - Lunch + Beer
1:30PM - Tequila time!
*back to work*
7:30PM - Finally done with coding, leaving the office
8PM - home at last
9:30PM - Beer time
9:31PM - "I'll just write a couple of more lines"
12:30AM - "That's it, no more code for today"
12:31AM - "I'll just scroll through devRant"1 -
Had to refresh a group session in my program, spent 15 minutes looking at my phone, put my bare feet on my desk and did this thing where I lean back in my chair and stick both hands in my pants, possibly smelled one. Thats when I realized my camera was on the entire time. Was also the only other person on stage/presenting so my screen was directly next to the instructors face cam.
-
For me there are two kinds of bugs. The ones where you lean backward and the ones where you lean forward.
If you found a bug and you lean backwards in your chair resting your hands behind your head you feel proud and relieved that you found that sneaky bastard. Good for your dev soul.
If you lean forward, resting your forehead on your fists or on the desk then it was a very stupid bug. Not sneaky at all. Something plain obvious. It makes you doubting all your career and life choices you made so far. Like needing one hour to find out that you named the "MANIFEST.in" accidentally "MAINFEST.in"...
Want to share any embarrassing bugs to make me smile again?5 -
Spent 3 hours today digging through 3rd party libraries, trying to get them all to work together nicely.
The solution? A one line fix in my own source.
FACEPALM!!! -
It’s so great to hear Apple is finally officially making the transition to rolling out their own silicon on everything... fucken fabulous. Sure there may be problems at first but this might just get the ball rolling to get more companies todo the same... we need to eliminate the silicon monopolies... ARM and rolling your own is the future... well it always use to be the standard... back in the day, until the whole modularity and lean manufacturing and order off the shelf shit came about .... but finally we have once again come full circle back to where things use to be.... pairing hardware with software fucken beautiful LOVE IT!!!
Sure this will affect portability but .... guess what folks... means more jobs for us... quit being lazy and complaining about having to work..
Love vertical integration!!!!34 -
Worked on a 13 inch laptop for one year straight. Back and neck started to get really f'ed up.
I bought a 27" monitor and still lean forward and my neck is still fucked.1 -
Assignment release: this is a basic assignment that is supposed to help you understand the basics of memory allocation. You are free to use any design you want, however you can implement more advanced features that would lean towards specific designs. What will be punished is that you don't have a dynamic memory allocator. We will run the tests for these offline after the deadline
2 days before the deadline: we released the tests for checking whether you're allocating memory dynamically, but these tests also check for this specific design. So fuck you for choosing any other design than this one. Have fun on sleepless nights.
Fuck me, I guess, for worthlessly working on a different design than they wished for, but didn't specifically ask for from the beginning. I just wasted 2 weeks of my life and feel unmotivated af to do anything anymore regarding this. Fuck this shit. Fuck them. Fuck this course.1 -
I just had a boys-out night with my son. Went to some restaurant, found a parking spot in a confusing parking lot (half is more expensive than the other half of the lot, not sure which fee applies to the middle row... confusing), started paying for parking with the app (pays every 15 minutes until stopped).
Went inside, ordered a pizza, some ice cream. Chatting, playing, eating, having fun,... An SMS comes: "You have outstanding fines" and a link to the gov taxes' website.
wtf.. I must have parked in the wrong spot. FUCK! Oh well, it should not be a large fine anyways, it's just for parking....
Click on the link, login with my bank/SmartID creds. Another SmartID dialog pops up asking for a PIN2.
What? PIN1 is for authentication, PIN2 is for Authorization. What am I authorizing...?
Reading through the Auth message: "Paying 2473€ for Boris SomeLastname".
what.....?
Thank God my muscle memory did not kick in and I did not enter that PIN2.
And thank God I know what PIN1 and PIN2 are for.
It would've been one expensive boys-out evening... Even a strip club would've been cheaper.
Stay sharp, guys!
P.S. Later I checked the URL. It used all the right keywords, and it was registered as an .info domain. It was somewhat off, but gov websites trying to be lean do sometimes use some weird ass domains.15 -
// This part of the code should never run
Came across that lovely comment when fixing a reported bug. Guess where the bug was? You guessed it XD1 -
I recently tried to apply the same data analytics rationale that I use at work to my personal life. This is not a rant, it is more like an data storytelling of an actual use case I would like some input on.
I set a goal - gotta thin up a bit and calm down my ticker - and got a (almost unreasonably expensive) field expert consultant to yell at me about it for a couple hours.
I unravel the metrics - there is like a million weight-related KPIs and most say nothing at all. I have never seen an non-infrastructure measurable subject that could not be resumed to 2-5 performance metrics. I got overall weight, how well my nine-years-old business suit fits me, heart rate, and day-after relative muscle pain (it will make sense soon).
Then its data-pipeline time. I bought a cheap weight scale and smartwatch, and every morning I input the data in an app. Yes, I try to put on the suit every morning. It still does not fit.
After establishing a baseline, I tried to fit different approaches. Doing equipment-free exercises, going to the gym, dieting. None was actually feasible in the long run, but trying different approaches does highlight the impacts and the handling profile of each method.
Looking at the now-gathered data, one thing was obvious - can't do dieting because it is not doable to have a shopping list and meals for me and another for the family.
Gym is also off the table - too much overhead. I spend more time on the trip there and back than actually there.
And home exercise equipment is either super crappy or very expensive. But it is also the most reasonable approach.
So it is solutions time. I got a nice exercise bycicle (not a peloton), an yoga mat (the wife already had that one) and an exercise program that uses only those two resources. Not as efficient without dieting, not as measurable and broad as the gym, but it fits my workflow. Deploy to production!
A few months pass and the dataset grows. The signal is subtle but has support - it works! The handling, however, needs improvement, since I cannot often enough get with the exercise program. Some mornings are just after some hard days.
I start thinking about what else I can improve in the program, but it is already pretty lean and full of compromises.
So I pull an engineer and start thinking about the support systems and draft profile. What else could be draining my willpower and morning time?
Chores. Getting the kids ready for school, firing up the moka pot, setting the off-brand roomba, folding the overnight-dried clothes, cooking breakfast, doing the dishes, cleaning the toilets. All part of my morning routine. It might benefit from some automation.
Last month I got that machine our elders call "wasteful" and "useless crap lazy entitled Americans invented because they feel oh-so-insulted for simply doing something by hand like everyone always did" - a "dish-washer".
Heh, I remember how hard was to convince my mother-in-law that an remote-controled electric garage door would not make she look like an spoiled brat.
Still to early to call, but I think that the dishwasher just saved me about 25 mins every morning. It might be enough to save willpower for me to do more exercise.
This is all so reflective of all data analytics cases really are out in the wild - the analytics phase seems so small compared to the gathering and practical problem-solving all around. And yet d.a. is what tells you that you are doing the wrong thing all along. Or on what you should work next.7 -
Haha, today I learnt that agile doesn't just stop in the enterprise with SAFe (Scaled Agile Framework), management has continued the theme in my new company with Lean-Agile Center of Excellence (LACE) and Agile Release Trains (ARTs).
Software development in 2021...9 -
At the conclusion of a successful dev interview:
"Don't be the first to lean in for the kiss goodbye. Make them come to you."2 -
Devops is an HR/management wank-word.
Of course we all know that devops is a lean, next generation, best-practice, shifting focus towards actionable items to facilitate value added integration and synergy between two key silos of the company.2 -
I'm tired of meth. I mean math. MATH.
I'm sick and tired of everything.
"First!" numerous blog comments shout to no-one, from the colorful abyss of the internet.
And for me, this is a first. But lets rewind.
It's 2 AM, about a month ago, spring in Akron Ohio. Someone reading this is no doubt shocked "You just revealed where you live, ON THE INTERNET! The weirdos will find you." Anyway, it's a dark and stormy night, as the cliche goes. Like most people up after midnight, I'm browsing facebook posts and useless productivity sites. (lifehacker)
I yearn for something more out of life, somewhere deep down inside..maybe in my colon?
All the articles are saying "10 tips to supercharge your life", "how to discover your life purpose in three easy steps", mixed with an ad about ron jeremys one secret tip to grow a massive cock, and exhortations to buy such-and-such's "new ebook!"
I am not moved by any of this.
Scrolling, and tabbing, and intermittently dropping f-bombs because of js ads locking up my browser, I stop and lean back. In the blue afterglow of my shitty compaqs screen, a thought appears, like a cheesy genie, popping out of a brass toilet. "Start a blog! A youtube channel! A podcast" the ad proclaims. "Yes. Thats what I have to do" I whispered (I'm embarrassed to admit I really did say this).
Then I Control+W'd out of it, and flopped onto my mattress. This was the wasteland of my life. I couldn't help but think The whole internet was like some seedy back alley 2.0, where boxcar willie with his train of needle marks had been replaced by more upstart, greasy-haired gurus. Each peddling 'ebooks' of 'advice', stuffed in between ads to buy 'this one hot stock you have to own' and porn. And that alley was really the 'blogosphere' and 'youtubers'. As I drifted off, the last thought was 'We're all just bottom feeders,leeching and whoring on the attention of faceless anonymous users, hoping for another quick fix.'
I fell asleep, these racing thoughts fading into sweet oblivion, but never too far away.
Welcome to My Back Alley
That title is only twice as dirty, and half as thought-out as I planned. As you imagine, the lure of being the electronic equivalent of a conman never quite faded. And the more I read, the stronger the message "Start a youtube channel!" grew. As if everyone and their grandmother having a youtube channel would somehow make the world right, cure cancer, and save kittens from animal shelter gas chambers. Everyones an expert, everyones an agent of change. Maximizing productivity, Evangelizing Technology, ninjas collaborating to socialfy your community diversification benchmark for target traffic
through user-engagement and authentic grass-roots, blah, blah, blah, blah, money. Thrusting, moaning, screaming. Money. Pumping at the center of it all.
Wake up and smell the bullshit.
This blog is not a blog. This blog is the anti-blog, and we are the anti-streamers. 'We' (read "I") resist your bullshit lingo bingo, call out the Truth (Tm) and refuse to be satisfied with any standards of decency, journalistic integrity, or common sense.
Every blog, every channel, every podcast is Starbucks And I'm tyler durden, pissing in your coffee, and calling it a 'latte'.
Freaks, and anarchists, laymen and losers. If you feel as I do, then this is the place for you. Welcome to devrant.11 -
Blender3D
Probably the most feature rich, frequently updated oss for computer graphics ever.
The project really captures the spirit of open source, most notably with it's open movie projects.
It does have a pretty steep learning curve, but taking the time to lean it is totally worth it. Not to mention comparable Autodesk software will run you thousands of $$$1 -
We have pretty fast and lean dev process between QA/Design/Devs.
But sometimes, it's going to shit ;p
QA :
An option "ROLE" is missing for grouping in that table.
So 5 min to create ticket, assign someone from design on it
Design : Yeah, this is true. We missed that option in our design.
Proceds to modift figma by adding an option "Role" to a drop down.
Reasigned to Junior dev.
Junior dev : I have no clue how grouping works with graphql.
So at least 30 min.
Reasigned to me.
Me after 1 min of looking at it : PR chhanges on screen shot :
Facepalm... Everyhtibng was already in place, someone forgot to add id AND name, not just name.
Git blame => Or never mind... it was me.. -
The feature was to parse a set of fairly complex xml files following a legacy schema. Problem was, the way this was done previously did not conform to the schema so it was a guideline at best, which over the course of many years snowballed into an anarchy where clients would send in whatever and it was continuously updated per case as needed. They wanted to start enforcing their new schema while phasing out the old method.
The good news is that parsing and serialization is very testable, so I rounded up what I could find of example files and got to work. Around the same time I asked our client if they had any more examples of typical cases we need to deal with, and sure enough a couple of days later I receive a zip with hundreds of files. They also point out that I should just disregard the entire old set since they decided to outright cut support for it after all if it makes things simpler. Nice.
I finish the feature in a decent amount of time. All my local tests pass, and the CD tests pass when I push my branches. Once we push to our QA env though and the integration tests run, we get a pass rate of less than 10%.
I spend a couple of days trying to figure out what's going on, and eventually narrow it down to some wires being crossed with the new vs. old xml formats. I'm at a loss. I keep trying to chip away at it until I'm left with a minimal example, and I have one of those lean-back moments where you're just "I don't get it". My tests pass locally, but in the QA environment they fail on the same files.
We're now 3 people around my workstation including the system architect, and I'm demonstrating to the others how baffling and black magic this is. I postulate that maybe something is cached in my local environment and it's not actually testing the new files. I even deleted the old ones.
"Are you sure you deleted the right files?"
"Duh of course -- but let me check..."1 -
C# has become shit.
I work since 2013 with C# (and the whole .NET stack) and I was so happy with it.
Compared to Java it was much lean, compared to all shitty new edge framework that looked like a unfinished midschool project, it was solid and mature.
It had his problems,. but compared to everything else that I tried, it was the quickes and most robust solution.
All went in a downhill leading to a rotten shit lake when all this javascript frenzy began to pop up and everyone wanted to get on the trendy bandwagon.
First they introduced MVC, then .NET Core, now .NET 5-6-7-8.
Now I'm literally engulfed with all these tiny bits of terror javascript provoked and they've implemented in all the parts of their framework.
Everything has to be null checked at compilation time, everything pops up errors "this might be nulll heyyyyy it's important put a ! or a ? you silly!!!" everywhere.
There are JS-ish constructs and syntax shit everywhere.
It's unbearable.
I avoid js like a plague whenever I can (and you know it's not a luxury you get often in the current state of a developer life) and they're slowly turning in some shit js hybrid deformed creature
I miss 2013-2018, when it wass all up to me to decide what to do with code and I did some big projects for big companies (200-300k lines of code without unit tests and yes for me it's a lot) without all this hassle.
I literally feel the need c# had to have some compiler rule you can quickly switch called "Senior developer mode" that doesn't trigger alarms and bells for every little stupid thing.
I'm sure you can' turn on/off these craps by some hidden settings somewhere, but heck I feel the need to be an option, so whoever keeps it on should see a big red label on top of the IDE saying "YOU HAVE RETARDED DEV MODE ON"
So they get a reminder that if they use it they are either some fresh junior dev or they are mentally challenged.20 -
I have come up with a weight loss program with developers in mind. It involves scaring the crap out of your fellow developers while they work and play on a computer. When you are scared you expend a bunch of energy reacting to the scare. Any number of scare tactics can be employed. They can be surprise (jumping out), conversational (your fired type), screamer videos or programs, etc. The type of scare is up to you. Get creative.
I am calling this program: Boo-Lean
You can choose to use this program or not.5 -
Most of the people who know me say I'm a very relaxed and empathetic guy, with a well respected technical knowledge and adaptability, definitely not the kind of "tough" boss you usually find. So, I'm really getting tired of big tech companies that keep preserving those narcissistic bad bosses that take advantage of guys like me, because I lean on the "softer" side. It's unbelievable the number of these companies that, although they praise a softer leadership style, they still preserve these morale-bloodsucking motherf**ckers, only because they are obsessed with (their own) results, which they usually deliver, no matter the cost.10
-
Non-dev
I'm really sad to see what's going on in the world right now, particularly America.
Millions of jobs are just, gone, automated away, or turned into shitty contract positions. This leaves us with huge unemployment, so people then are forced to participate in a race to the bottom for the shitty contract jobs.
Ridesharing now classifies its employees as contractors. Who does this help? The companies of course, cause they dont need to give anyone benefits or even minimum wage.
And then since these guys are contractors, restaurants and stuff end up eliminating their drivers since they can't compete with the lean mean ridesharing machine.
Soon most "essential" work is just going to be poor people begging for tips from their work because the companies count them as contractors and dont give them benefits or enough to live on.
Fuck this shit. I'm so glad I'm a dev and mostly shielded from this, for now. But it's upsetting to think of what the world will be like in 20 years as this continues.4 -
I'm in this university software engineering course, where the professor decides he need to teach us the entire history of software engineering.
Dude, we were taught how to use SVN in addition to Git. Huh? And for software development processes, we were taught a total of 7 of them. There're: code and fix, waterfall, prototyping, spiral, phased, agile and lean. And the tests are like "list 5 advantages and disadvantages for X, and compare them to the advantages and disadvantages of Y". Wtf dude. I don't mind memorizing things, but the things I learn aren't even relevant (except agile and lean). Nobody would be impressed if I say I know SVN in an interview. What am I doing with my life. Ok, back to cramming this shit cuz i need my GPA. Bye.10 -
I don't care about market cap. Stick your hype-driven business practices up your ass. Infinite growth doesn't exist. I won't read your fucking books and attend your fucking bootcamps and MBAs. You don't have a business model. Selling data is not a business model. Fuck your quick-flip venture capital schemes, and especially fuck your “ethics”.
I will be the first alt-tech CEO. I only care about revenue. The real money, not capitalization bubble vaporware. You don't need a huge fleet of engineers if you're smart about your technology, know how to do architecture, and you're not a feature creep. You don't need venture capital if you don't need a huge fleet of engineers. You don't need to sell data if you don't need venture capital. See? See the pattern here?
My experience allows me to build products on entirely my own. I am fully aware of the limitations of being alone, and they only inspire lean thinking and great architectural decisions. If you know throwing capacity at a problem is not an option, you start thinking differently. And if you don't need to hire anyone, it is very easy to turn a profit and make it sustainable.
If you don't follow the path of tech vaporware, you won't have the problems of tech vaporware, namely distrust of your user base, shitty updates that break everything, and of course “oops, they raised capital, time to leave before things go south”.
A friend of mine went the path I'm talking about, developed a product over the course of four years all alone, reached $10k MRR and sold for $0.8M. But I won't sell. I only care about revenue. If I get to $10k MRR, I will most likely stop doing new features and focus on fixing all the bugs there are and improving performance. This and security patches. Maybe an occasional facelift. That's it. Some products are valued because they don't change, like Sublime Text. The utility tool you can rely on. This is my scheme, this is what I want to do in life. A best-kept secret.
Imagine 100 million users that hate my product but use it because there are no alternatives, 100 people in data enrichment department alone, a billion dollars of evaluation (without being profitable), 10 million twitter followers, and ten VC firms telling me what to do and what data to sell.
Fuck that. I'd rather have one thousand loyal customers and $10k MRR. I'm different, some call it a mental illness, but the bottom line is, my goals are beyond their understanding. They call me crazy. I won't say it was never about the money, of course it was, but inflating your evaluation is not “money”. But the only thing they have is their terrible hustle culture lives and some VC street wisdom, meanwhile I HAVE products, it is on record on my PH. I have POTDs, I have a fucking Golden Kitty nomination on health and fitness for a product I made in one day. Fuck you.7 -
I just scroll past this question asking how to get good at Git commands (https://devrant.com/rants/9997784/...). Figured I'd share my thoughts as a separate rant cause it's a topic I've tinkered with a bit.
So, My initial engagement with git-related queries on StackOverflow dates back to around 2021.. Surprisingly, one of my short and straight-to-the-point replies got a hand full of attention. You can check it here: https://stackoverflow.com/a/...
Now, about mastering Git commands – from my own trial and error:
1). Instead of trying to cram everything into your big brain, scribble down notes. Trust me, it’s more practical. I kept a cheat sheet of sorts as notes on my PC, noting down the commands I used day in, day out. Super handy beyond just work stuff.
2). You gotta get what each command does, but you don't need to nail it all at once. Spend a day diving into the basic commands. Leave the trickier ones for later; they start making sense as you get more into it.
3). I had this aha moment when dealing with a merge mess using a GUI tool. Switched to the command line, and bam! It made way more sense. The command line's like a secret passage to really understanding Git.
So, if you're wondering how to tackle Git commands, my take is: *notes, *baby steps, and *lean into that command line magic. Mix them up your way and see what sticks for you!1 -
"The ability to change on a dime is one thing small teams have by default that big teams can never have. This is where the big guys envy the little guys. What might take a big team in a huge organization weeks to change may only take a day in a small, lean organization. That advantage is priceless." - Andrew Hunt
-
So I promised a post after work last night, discussing the new factorization technique.
As before, I use a method called decon() that takes any number, like 697 for example, and first breaks it down into the respective digits and magnitudes.
697 becomes -> 600, 90, and 7.
It then factors *those* to give a decomposition matrix that looks something like the following when printed out:
offset: 3, exp: [[Decimal('2'), Decimal('3')], [Decimal('3'), Decimal('1')], [Decimal('5'), Decimal('2')]]
offset: 2, exp: [[Decimal('2'), Decimal('1')], [Decimal('3'), Decimal('2')], [Decimal('5'), Decimal('1')]]
offset: 1, exp: [[Decimal('7'), Decimal('1')]]
Each entry is a pair of numbers representing a prime base and an exponent.
Now the idea was that, in theory, at each magnitude of a product, we could actually search through the *range* of the product of these exponents.
So for offset three (600) here, we're looking at
2^3 * 3 ^ 1 * 5 ^ 2.
But actually we're searching
2^3 * 3 ^ 1 * 5 ^ 2.
2^3 * 3 ^ 1 * 5 ^ 1
2^3 * 3 ^ 1 * 5 ^ 0
2^3 * 3 ^ 0 * 5 ^ 2.
2^3 * 3 ^ 1 * 5 ^ 1
etc..
On the basis that whatever it generates may be the digits of another magnitude in one of our target product's factors.
And the first optimization or filter we can apply is to notice that assuming our factors pq=n,
and where p <= q, it will always be more efficient to search for the digits of p (because its under n^0.5 or the square root), than the larger factor q.
So by implication we can filter out any product of this exponent search that is greater than the square root of n.
Writing this code was a bit of a headache because I had to deal with potentially very large lists of bases and exponents, so I couldn't just use loops within loops.
Instead I resorted to writing a three state state machine that 'counted down' across these exponents, and it just works.
And now, in practice this doesn't immediately give us anything useful. And I had hoped this would at least give us *upperbounds* to start our search from, for any particular digit of a product's factors at a given magnitude. So the 12 digit (or pick a magnitude out of a hat) of an example product might give us an upperbound on the 2's exponent for that same digit in our lowest factor q of n.
It didn't work out that way. Sometimes there would be 'inversions', where the exponent of a factor on a magnitude of n, would be *lower* than the exponent of that factor on the same digit of q.
But when I started tearing into examples and generating test data I started to see certain patterns emerge, and immediately I found a way to not just pin down these inversions, but get *tight* bounds on the 2's exponents in the corresponding digit for our product's factor itself. It was like the complications I initially saw actually became a means to *tighten* the bounds.
For example, for one particular semiprime n=pq, this was some of the data:
n - offset: 6, exp: [[Decimal('2'), Decimal('5')], [Decimal('5'), Decimal('5')]]
q - offset: 6, exp: [[Decimal('2'), Decimal('6')], [Decimal('3'), Decimal('1')], [Decimal('5'), Decimal('5')]]
It's almost like the base 3 exponent in [n:7] gives away the presence of 3^1 in [q:6], even
though theres no subsequent presence of 3^n in [n:6] itself.
And I found this rule held each time I tested it.
Other rules, not so much, and other rules still would fail in the presence of yet other rules, almost like a giant switchboard.
I immediately realized the implications: rules had precedence, acted predictable when in isolated instances, and changed in specific instances in combination with other rules.
This was ripe for a decision tree generated through random search.
Another product n=pq, with mroe data
q(4)
offset: 4, exp: [[Decimal('2'), Decimal('4')], [Decimal('5'), Decimal('3')]]
n(4)
offset: 4, exp: [[Decimal('2'), Decimal('3')], [Decimal('3'), Decimal('2')], [Decimal('5'), Decimal('3')]]
Suggesting that a nontrivial base 3 exponent (**2 rather than **1) suggests the exponent on the 2 in the relevant
digit of [n], is one less than the same base 2 digital exponent at the same digit on [q]
And so it was clear from the get go that this approach held promise.
From there I discovered a bunch more rules and made some observations.
The bulk of the patterns, regardless of how large the product grows, should be present in the smaller bases (some bound of primes, say the first dozen), because the bulk of exponents for the factorization of any magnitude of a number, overwhelming lean heavily in the lower prime bases.
It was if the entire vulnerability was hiding in plain sight for four+ years, and we'd been approaching factorization all wrong from the beginning, by trying to factor a number, and all its digits at all its magnitudes, all at once, when like addition or multiplication, factorization could be done piecemeal if we knew the patterns to look for.7 -
I started my career almost 20 years ago now.
I had the chance to work in really good environments, and with people trying to be performant. In my first company, the CTO pushed a lot the new/shiny XP method. Then I used the first iterations of Scrum as a Team Leader.
As I became a Service Manager, I found my love in kanban/lean (and my worst nightmare in sigma six).
I crashed startups created with friends and cashed out sometimes.
I also did a lot of "agile consulting", around productivity, product methods, organization (even got certified SaFe, the Agile framework that states" process over people").
When I came back to Europe, I just wanted to get back to the level I was in North America.
I have done a lot of mentoring, but now I lack the motivation (and time) to keep doing it, the way I did. So I stopped.
And now I have to answer the question "do I leave delivery?". Also, it seems that a lot of actual organizations are starting to put the product under " tech top management" ( companies I like at least).
So I wonder, what my next evolution should be...
Should I leave tech delivery to be fully Top-Management...
Do I want to structure/handle/organize the Product Teams...
Covid has given me time to start thinking a lot more about my situation... And it sucks... -
Working for early-stage startup is like living with alcoholic father. Fuck lean startup mantra! Fuck any kind of bullshit about agility and business sustainability.8
-
When you’re interviewing for a job and the recruiter tells you the hiring manager is brand new, and
the hiring manager’s manager is also new, how do you react?
I’ve had two jobs in the last six years where basically everyone in my sphere of technical collaborators were new to the company and both times it utterly sucked, both for administrative reasons and because there was no institutional/historical knowledge I could lean on to make decent enough decisions on my work.
So now when I hear a recruiter say “oh yes John is the hiring manager, he’s been here six weeks and the Director is also new!” I’m suddenly much less interested in the position anymore.
I’m probably thinking about this too much, right?4 -
What a vast and great eco-system we have (refering to js and npm) almost every time I am trying to use two libs and combine them to work together some shit happens.
So I wanted to have lean and good written code without introducing unnecessary renders and logic.
Ended up doing just that because 'we know about issue with our library, many users told us that, too bad we wont fix that shit', so I feel like a 'workaround' developer at some hackathon right now! -
I've been reading a lot about companies moving towards implementing a one-person policy. Like, one person is end-to-end responsible for the backend, one person for android app, one for iOS app and so on.
They also call it "lean teams. Less people, less discussions, less bullshit"
Or maybe the search algorithms have flagged me as a recent job seeker, idk.
This is seriously scary because essentially it's telling devs "We will underpay you and overwork you as we wish. And you can't leave us because other companies have implemented their one person policy so u ain't getting hired anywhere else."9 -
Well i see those as two separate problems. To focus get a pot of coffee, put headphones on loud enough to tune out any outside noise, and lock the door. As for procrastination lean into the damn skid, go find something you like to do and come back later. The longer you fight it the more unproductive time you're going to have, and in my experience i get more done in 3 productive hours than i do in 8 unproductive hours1
-
I swear I still cannot figure out how to adjust my chair comfortably for the life of me, and I don't want to embarrass myself by sitting down on the ground and spend 30 minutes figuring out how to make the back not fall when I lean back.1
-
Lean into the skid and go do something else. If i have a deadline buy a pint of crown, roll a blunt, and get back to work
-
Non technical bosses managing technical people should never be allowed. It'd be like if the head chef at a restaurant only knew how to cook Lean Cuisine, but bossed around all the other chefs on how they should do their job.2
-
My last company during the interview said I could do hybrid.
It was about 6 hours of public transport a day. One way was 3 trains and one bus. If everything went well. Which it almost never did. Had days where I had to travel 9 hours.
My whole plan was to move closeby but was going to lean on the hybrid to stay somewhat sane.
They said well we kind of want you to work in office only for a bit. I was like fair.
I went hard responding on home for months.
I asked if I could do hybrid now because it got to the point it really started affecting my productivity.
They said nah we dont do that here.
(They literally had hired an third party dev that was fully remote)
Month later I said wasn't it possible to do at least something.
They offered me 1 day every 2 weeks. Like that was gonna make a fucking dent you fucking crownies. I had to act like it was a god damned privilege.
I made it 9 months in before I was like I really can't do this anymore like this.
The CTO was very quick to move me to HR. They wanted me to mutually unwind the fucking contract.
They were saying well you've got this many vacation days left we'll add 2 days so you'll have pay next month.
Last day was friday where the CEO came to me. Was like here a little something.
A 10 fucking bucks amazon gift card. Are you fucking mental.
I was so fucking done with it.
Work should be a two way relationship you fuckers.
I always did my work. I did it well and it really felt like they just didnt even acknowledge me as a human.7 -
AppStore says "We're working hard on getting all the 🐛s squashed so please bear with us."
I says "WHAT 🐛s?!" devRant is the 💣1 -
Now that the weather is nice, I've started doing some landscaping in my back yard. I thought I'd start easy with taking down a shed that was starting to lean that I inherited when I moved in.
In the process of taking it down, I discovered a wire that went from the house to the shed. The wire in the shed wasn't live but I had no idea where it terminated and I didn't want that sickle of death hanging over my neck.
After I finished taking down the shed, I started working on the wire. This wire was buried about 18 inches deep and was about 25 feet from where it was supposed to attach, which was another 25 feet from the house.
I finally got the first section dug up only to discover that the second section was attached to my retaining wall and traveled under a rotting wood patio also built directly on top of dirt. I needed to take it down regardless, but I wanted to wait until I was ready.
Protip: don't build anything made of wood directly on the ground. Given time, even treated wood will rot.
This second section was live and exposed to air. It's truly a wonder nothing bad happened with it. And most of it was only an inch under the dirt. Also, no conduit. Just a wire.
So now, several days into a simple teardown, my back yard has a deep trench dug into it going from one corner of the yard to the house. I have a huge patch of muddy dirt where I had to tear down a patio to fix an actual threat to life and limb.
I also discovered my retaining wall was built directly on top of dirt, no gravel in sight, which explains why it is leaning. Fortunately, I've built retaining walls before, so I know how to fix it.
It's a good thing I like landscaping because it's going to be an expensive and messy summer.4 -
One of the most headache-inducing things about being a developer is having to find a solution to every little ailment that software has.
An example would be: working with a particular stack. LEAN, MEAN, LAMP, WAMP,.. The nightmare of having to deal with every single error in PHP, NodeJS, Apache Server, Nginx, the HTTP spec intricacies, the HTML5 spec, API problems..
Sometimes it's just a lot to deal with and I'm trying not to lose my patience.9 -
My dev area of focus? Frontend web, and always trying to lean more towards CSS and UI/UX than to javascript.
Why? Because I discovered that I'm a designer with zero ability to design, so with CSS I can at least implement other people's beautiful designs. -
I personally like to sit with my laptop on my bed when I code. I just lean my pillows up against the wall and lay into them. It's just a comfortable spot and I like it. I've never cared much for sitting in a chair at a desk, which is also why I have my desk right next to my bed! (I've been told my setup is very unusual.)6
-
I see now that a few things that make programing seems so hard are;
1. Over thinking, over thinking will have you in a box not knowing where to start at times.
2. Procrastination, don't put off learning that concept or paradigm. A lot of stuff are interlinked or transferable regardless of language. So you don't need to lean it all but learn as much as you can.
1. Perfectionism, your code early on might just suck, and that's great cause then you can fix it and make it suck less. Nothing is perfect and they don't have to be in over to be good.
These are some of the things I wish I could go back and tell myself.4 -
I have a picture of breaking waves above my desk. I lean back, remember times I was out on my surfboard just sitting in the water. Sometimes I make some green tea and just breath.
If that doesn't work, black coffee, somafm EDM and stress the fuck out until it's done. -
Gotta love when you come across an interesting piece of software with a modern, sleek, and snazzy homepage. Then you press "Sign up" and are redirected to an ancient 90's web app whose first element after the body is a table.
-
http://thepennyhoarder.com/125-work...
I've been exploring all of these companies to get an idea for where I need to lean my learning toward.
I'm super jealous of some of these benefits and it would be so handy to stay home.
However, I am still conflicted/confused on the different areas to focus on. -
I'd like to make a board game (with cards essentially) with a web technology and take the occasion to learn a new tech.
For now I know pure js, jquery, java servlets, jsp, MVC5 and razor. I would like to learn something lean, new, powerful and useful in a job perspective. Any suggestions?9 -
Some 80s and 90s books. And the more the time goes by the more I lean towards FP and stateless systems...
On the syntactic side I love the work of Kevlin Henney. For me it's all about readability. So a lot of choices are based on that. -
What is your guys' preferred webserver?
Apache, nginx, lighttpd, hiawatha, caddy,...?
I lean towards lighttpd and hiawatha8 -
I consider myself to be part of the first gen of web devs in the early 90s, there were no “mentors” to lean upon per se, so we had to rely on our own wits as the tech evolved. Ironically , now I serve as a “mentor” to many generations of web devs who have graduated from courses I have taught on it for almost two decades . And I feel better learning from all my mentees as well.
-
Day 3 (or 4), Seems like my medical state is getting worse. Between my ass cheeks its a bit swollen, lump and very red. It hurts on touch and especially when i sit on it. I have to lean forward when i sit to avoid sitting on that lump
I mean, it sounds extremely horrible when you read it like that lol but Trust. It aint that bad as it sounds. If it was really bad I'd be flying to doctor. I just thought it was gonna go away by itself but sitting on my ass is just making it worse and more red...
I guess I'll have to get my ass cheeks checked. What a good way to show all these companies who rejected me my ass cheeks so they can kiss it just the way it is red and lumpish. Bunch of cocksuckers asscheek lickers fuck off
Btw does anyone wanna see my ass cheeks and see how red it is? Lmk I'll post a link in comments6