Details
Joined devRant on 6/16/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
-
A Vue application I'm tasked with fixing consists of one single huge component, wouldn't survive even the most liberal use of linting, and has a reloadPage() function.
How fucked am I?6 -
Client: This new feature is not working on Internet Explorer.
Me: Do you have enough oxygen in the cave you are living in?7 -
About six months ago I decided I wanted to learn to write a neural network from the ground up, using only the C++ standard lib. Had to learn some linear algebra, multivariable calc and a dash of wizardry.
The mathematics of neural networks is still one of the coolest things I've ever learnt. It still marvels me that you can make a specialized mini-brain out of nothing but numbers.17 -
My dad found a phone a few weeks ago and asked me what he should do with it. Knowing how much it hurts to lose personal data, I said I could try to find the owner and send it back.
My first attempt was to search through the files on the SD card in order to find an identifying document (CV, bill, address...) but there were only family pictures.
My second attempt was to unlock the phone and check the information about the owner and the accounts linked to it. But for this to be possible adb has to be enabled. Good thing is that that particular brand shows an option for activating adb on the recovery menu.
But then, it's Android Oreo and I haven't found a way to lift the lock pattern. I thought I could bruteforce it over the shell (as I found there could be about 1300 possibilities for 2 to 5 point patterns), but there is the same attempt throttling as on the screen so that would take ages.
Finally, I found the owner in the most "social" way : The phone was displaying the weather for a particular place. It turns out that there are only 3K inhabitants in that city, si I thought that a big enough Facebook group might help me find the owner. So I posted a message on a 500 people FB group dedicated to this city with a selfie of the owner : someone identified her within 20 minutes.
Mission accomplished 😎42 -
So today I got let go from my job.
I've worked for this company for about 2.5 years, and soon after joining I became the only IT resource for software. I had to support literally everything after they fired the rest of the team, but I did a great job and have been praised by all the management at the company.
A few months ago, after a salary review and a frank discussion with my boss and his boss, they agreed that I am due for a raise. They had a massive project coming up with a lot of extra expenses, but I was told that right afterward they would be giving raises.
I spent tons of late nights and weekends on this project, and we were able to get it mostly finished about a 1.5 months ago. I was instrumental in the project (the rest of the IT team didn't even know how to set up simple DNS records). An email was sent to the whole company thanking me for all the work I put into the project.
A week ago, I messaged my boss to ask about the status of raises as he had told me they should be going out at the beginning of this month. He said there won't be any raises, and that's all I heard. Then today I get a call telling me that they are letting me go.
Let me get this straight: you led me on with talk of a raise just to keep me here working long hours for your big project, and then you fire me after recognizing what a great job I did? That's just sick. I have watched them treat other employees and partners unethically, but it took getting it first hand to realize how bad it really is. My teammates were in shock when I said I was leaving as they have all leaned on me very heavily.
Fortunately, I have had several offers come in over the last few months (2 this week) for more pay. I only held off because of the lies I was told about receiving a raise and out of a false sense of loyalty. I'm not worried about my future at all, just angry at the way I was treated.29 -
So... After reading up on the theoretical stuff earlier, I decided to make a real AI that can identify handguns and decide whether it's a revolver or a semiautomatic with 95 percent accuracy...
Well, basically, I been browsing my local gun store's online store for four hours for training data, killed a Mac mini while first training the system and I think I ended on the domestic terrorism watch list... Was that black sedan always there?
Anyway... It's working fairly accurate, my monkey wrench is a revolver by the way.
Isn't AI development a wonderful excuse for all kinds of shit?
"why do you have 5000 pictures of guns on your computer?" - "AI development"
"why did you wave around a gun in front of your web cam" - "AI development"
"why is there a 50 gram bag in your desk?" - "AI development"
Hmm... yeah well... I think it might work. I could have picked a less weird testing project, but... No.7 -
I love it how managers try to act busy by going through the same mails over and over again while waiting for a new one so that they can instantly reply to it and show themselves off as "prompt" and screw us, who have to actually do some work, about not sending mails promptly and they have like this one single excel sheet opened at all times and they just make one obscure entry whenever they get an update and WOW, some of them don't even know how the fuck you spell Avro (spelt it as avero, handwritten) and oh, not to mention waste everyone's time by asking a mundane question that other managers are so eager to answer, one by one, over and over and did I mention THAT THEY DON'T EVEN KNOW HALF THE PRODUCT.
-
Things have been a little too quiet on my side here, so its time for an exciting new series:
practiseSafeHex's new life as a manager.
Episode 1: Dealing with the new backend team
It's great to be back folks. Since our last series where we delved into the mind numbing idiocy of former colleagues, a lot has changed. I've moved to a new company and taken a step up as a Dev manager / Tech lead. Now I know what you are all thinking, sounds more dull and boring right? Well it wouldn't be a practiseSafeHex series if we weren't ...
<audience-shouting>
DEALING! ... WITH! ... IDIOTS!
</audience-shouting>
Bingo! so lets jump right in and kick us off with a good one.
So for the past few months i've been on an on-boarding / fact finding / figuring out this shit-storm, mission to understand more about what it is i'm suppose to do and how to do it. Last week, as part of this, I had the esteemed pleasure of meeting face to face with the remote backend team i've been working with. Lets rattle off a few facts to catch us all up:
- 8 hour time difference to me
- No documentation other than a non-maintained swagger doc
- Swagger is reporting errors and several of the input models are just `Type: String`
- The one model that seems accurate, has every property listed as optional, including what must be the primary key
- Properties go missing and get removed at the drop of a hat and we are never told.
- First email I sent them took 27 days to reply, my response to that hasn't been answered so far 31 days later (new record! way to go team, I knew we could do it!!!)
- I deal directly with 2 of them, the manager and the tech lead. Based on how things have gone so far, i've nick named them:
1) Ass
2) Hole
So lets look at some example of their work:
- I was trying to test the new backend, I saw no data in QA. They said it wouldn't show up until mid day their time, which is middle of the night for us. I said we need data in our timezone and I was told: a) "You don't understand how big this system is" (which is their new catch phrase) b) "Your timezone is not my concern"
- The whole org started testing 2 days later. The next day a member from each team was on a call and I was asked to give an update of how the testing was going on the mobile side. I said I was completely blocked because I can't get test data. Backend were asked to respond. They acknowledged they were aware, but that mobile don't understand how big the system is, and that the mobile team need to come up with ideas for the backend team, as to how mobile can test it. I said we can't do anything without test data, they said ... can you guess what? ... correct "you don't understand how big the system is"
- We eventually got something going and I noticed that only 1 of the 5 API changes due on their side was done. Opened tickets. 2 days later asked them for progress and was told that "new findings" always go to the bottom of the backlog, and they are busy with other things. I said these were suppose to be done days ago. They said you can't give us 2 days notice and expect everything done. I said the original ticket was opened a month a go *sends link* ......... *long silence* ...... "ok, but you don't understand how big the system is, this is a lot of work"
- We were on a call. Product was asking the backend manager (aka "Ass") a question about a slight upgrade to the new feature. While trying to talk, the tech lead (aka "Hole") kept cutting everyone off by saying loudly "but thats not in scope". The question was "is this possible in the future" and "how long would it take", coming from management and product development. Hole just kept saying "its not in scope", until he was told to be quiet by several people.
- An API was sending down JSON with a string containing a message for the user with 2 bits of data inside it. We asked for one of those pieces to also come down as a property as the string can change and we needed it client side. We got that. A few days later we found an edge case and asked for the second piece of data to be a property too. Now keep in mind, they clearly already have access to them in order to make the string. We were told "If you keep requesting changes like this, you are going to delay the release of the backend by up to 2 weeks"
Yes folks, there you have it, the most minuscule JSON modifications, can delay your release by up to 2 weeks ........ maybe I should just tell product, that they don't understand how big the app is, and claim we can't build it on our side? Seems to work for them
Thats all the time we have for today,
Tune in for more, where we'll be looking into such topics as:
- If god himself was an iOS developer ... not
- Why automate when you can spend all day doing it by hand
- Its more time-efficient to just give everything a story point of 5
- Why waste time replying to emails ... when you can do nothing instead
See you all next week,
practiseSafeHex14 -
My girlfriend knows what a coder needs when it’s their birthday. Lucky to have her. Walked into my room and it was set up like this.51
-
So ok here it is, as asked in the comments.
Setting: customer (huge electronics chain) wants a huge migration from custom software to SAP erp, hybris commere for b2b and ... azure cloud
Timeframe: ~10 months….
My colleague and me had the glorious task to make the evaluation result of the B2B approval process (like you can only buy up till € 1000, then someone has to approve) available in the cart view, not just the end of the checkout. Well I though, easy, we have the results, just put them in the cart … hmm :-\
The whole thing is that the the storefront - called accelerator (although it should rather be called decelerator) is a 10-year old (looking) buggy interface, that promises to the customers, that it solves all their problems and just needs some minor customization. Fact is, it’s an abomination, which makes us spend 2 months in every project to „ripp it apart“ and fix/repair/rebuild major functionality (which changes every 6 months because of „updates“.
After a week of reading the scarce (aka non-existing) docs and decompiling and debugging hybris code, we found out (besides dozends of bugs) that this is not going to be easy. The domain model is fucked up - both CartModel and OrderModel extend AbstractOrderModel. Though we only need functionality that is in the AbstractOrderModel, the hybris guys decided (for an unknown reason) to use OrderModel in every single fucking method (about 30 nested calls ….). So what shall we do, we don’t have an order yet, only a cart. Fuck lets fake an order, push it through use the results and dismiss the order … good idea!? BAD IDEA (don’t ask …). So after a week or two we changed our strategy: create duplicate interface for nearly all (spring) services with changed method signatures that override the hybris beans and allow to use CartModels (which is possible, because within the super methods, they actually „cast" it to AbstractOrderModel *facepalm*).
After about 2 months (2 people full time) we have a working „prototype“. It works with the default-sample-accelerator data. Unfortunately the customer wanted to have it’s own dateset in the system (what a shock). Well you guess it … everything collapsed. The way the customer wanted to "have it working“ was just incompatible with the way hybris wants it (yeah yeah SAP, hybris is sooo customizable …). Well we basically had to rewrite everything again.
Just in case your wondering … the requirements were clear in the beginning (stick to the standard! [configuration/functinonality]). Well, then the customer found out that this is shit … and well …
So some months later, next big thing. I was appointed technical sublead (is that a word)/sub pm for the topics‚delivery service‘ (cart, delivery time calculation, u name it) and customerregistration - a reward for my great work with the b2b approval process???
Customer's office: 20+ people, mostly SAP related, a few c# guys, and drumrole .... the main (external) overall superhero ‚im the greates and ur shit‘ architect.
Aberage age 45+, me - the ‚hybris guy’ (he really just called me that all the time), age 32.
He powerpoints his „ tables" and other weird out of this world stuff on the wall, talks and talks. Everyone is in awe (or fear?). Everything he says is just bullshit and I see it in the eyes of the others. Finally the hybris guy interrups him, as he explains the overall architecture (which is just wrong) and points out how it should be (according to my docs which very more up to date. From now on he didn't just "not like" me anymore. (good first day)
I remember the looks of the other guys - they were releaved that someone pointed that out - saved the weeks of useless work ...
Instead of talking the customer's tongue he just spoke gibberish SAP … arg (common in SAP land as I had to learn the hard way).
Outcome of about (useless) 5 meetings later: we are going to blow out data from informatica to sap to azure to datahub to hybris ... hmpf needless to say its fucking super slow.
But who cares, I‘ll get my own rest endpoint that‘ll do all I need.
First try: error 500, 2. try: 20 seconds later, error message in html, content type json, a few days later the c# guy manages to deliver a kinda working still slow service, only the results are wrong, customer blames the hybris team, hmm we r just using their fucking results ...
The sap guys (customer service) just don't seem to be able to activate/configure the OOTB odata service, so I was told)
Several email rounds, meetings later, about 2 months, still no working hybris integration (all my emails with detailed checklists for every participent and deadlines were unanswered/ignored or answered with unrelated stuff). Customer pissed at us (god knows why, I tried, I really did!). So I decide to fly up there to handle it all by myself16 -
I spent yesterday refactoring a JavaScript file and it was so fucking bad that I wasn't containing my frustration to the point it git blamed it to make sure I wasn't "wtfing" my boss's code, I wasn't so I went on a rampage.
Anyone who looked at me yesterday would see a pissed off dev with the highest rate of wtf/minute to the screen gesturing and force palming constantly.
I'm a back end dev.
I made a front end code have 90% (?!?!?!) less code, more readable and I can say for sure 10x faster.
There was a fucking setTimeout() with 5 seconds delay to do something that doesn't even need to wait...
Fuck this shit lol.2 -
I just installed VSCode for the first time yesterday; running on a MacBook. I spent the early hours of the day working on my C++ project on there. Moving to the workspace was really, really easy; I haven’t had the best of experience with Visual Studio.
VSCode is so clean and light. I love the extensions they have for different languages; I’ve only tried the C/C++ one at the moment. I also love the fact that you can create json preference files for shell/process tasks and also for launching different kinds of debug sessions.
It has a fully functional, built-in terminal. And at this moment, I’m looking to fork the code from GitHub to try and see if I can add something that’s been bugging me since yesterday.
One of the many nice things I’ve gotten from devRant since I joined. Thanks folks.8 -
That moment when your mobile internet is so slow and you decide to ssh into your server and use elinks to browse the web and everybody around you is like "he's hacking" and I'm like IM JUST TRYING TO READ FUCKING NEWS BECAUSE GUESS WHO DOESNT PAY SO MUCH FUCKING MONEY FOR 1GB PER MONTH WHERE 500MB ARE USED AFTER VISITING ONE FUCKING SITE BECAUSE THERE ARE SO MANY DAMN ADS ON IT. I JUST WANT TO READ NEWS OR LEARN SOME C++++++++++ BUT INTERNET IS TOO SLOW TO OPEN FUCKING DDG.
Browsing the web in terminal is super nice btw. Really recommend that8 -
Aww Yeh. Got them stickers. Thanks @dfox, @trogus. And to you guys for getting my post to 20++. XPS 15 looking slick.
-
A physicist, a mathematician, and a statistician go hunting. They spot a deer, and take aim. The physicist shoots first and misses 10 meters to the right. The mathematician shoots next and misses 10 meters to the left. The statistician then throws down his gun and proclaims, “we got it!”1
-
I like to code as a hobby as well as do it as a day job so it surprises me quite alot when people get all funny about me coding outside of work/uni. It's just funny because half of these brain dead students know nothing about anything other than what they're taught in education. Most students are so fucking stupid nowadays and they don't like to read or research or learn. But I'm the anomaly. Ok guys. Well done, go get pissed; it's the best you can do with your braindead selves.3
-
I'm so fucking done with net neutrality. the only ones who want it are verion, comcast, and other big isps.
fuck them.
this is fucking merica. nobody wants it, and this is a government designed for the people. I guess it only works in theory.
the talk about this has been fucking exhausting. how much clearer could it be?
how does it keep coming up? so much of the economy is online. why would congress want this? this should be a fucking fundamental right. no bs, just fast speeds everywhere. i hate all the isps thinking that because the world is so reliant on the internet, they control everything.
isps are a service. that's it.
they're not a profiler or advertiser, just a service.
and if that changes, I'll buy a bunch of flash drives and go offline.
bottom line, we should have privacy, neutrality, and a safe web. fuck those greedy bastards.17 -
Product gets launched in 2 hours. Just casually updating the documentation. Nice chill day. Everything tested and validated.
Then some random f**king designer comes barging in vomiting all these "necessary" features to the product owner.
This was yesterday. The designer and product owner are currently complaining to us devs that there are bugs everywhere...
I need a beer.3