Details
-
AboutFull Stack Developer
-
SkillsJavaScript 💚
-
LocationMelbourne
-
Website
Joined devRant on 9/8/2016
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
-
PM: That screwdriver you built me is really nice. I like how it works with all screws and bolts, does the work itself, etc., but I simply can’t get it to paint, and I really need it to cut my sandwich. Can it cut my sandwich?
PM: Also, since you finished it, the neighbor’s can opener doesn’t work, my dog got fleas, and our screw supplier ran into shipping issues. Fix these ASAP!
Bonus:
Also, remember that hack I forced you to do despite you telling me it wouldn’t work? Yeah it isn’t working. You need to fix that too.20 -
Ah yes, progress...
Why do SJWs have to infiltrate everything and project their own racist views of the world onto non-problematic terms?
Slavery has existed for as long as humanity and abolishing the terms will definitely not solve slavery and opression.
I am not against Git changing the default name but I am against them doing it in the name of "inclusivity". The technical world exists by merit and not inclusivity. Why make everything about color, race or slavery level?86 -
Hey everyone,
We have a few pieces of news we're very excited to share with everyone today. Apologies for the long post, but there's a lot to cover!
First, as some of you might have already seen, we just launched the "subscribed" tab in the devRant app on iOS and Android. This feature shows you a feed of the most recent rant posts, likes, and comments from all of the people you subscribe to. This activity feed is updated in real-time (although you have to manually refresh it right now), so you can quickly see the latest activity. Additionally, the feed also shows recommended users (based on your tastes) that you might want to subscribe to. We think both of these aspects of the feed will greatly improve the devRant content discovery experience.
This new feature leads directly into this next announcement. Tim (@trogus) and I just launched a public SaaS API service that powers the features above (and can power many more use-cases across recommendations and activity feeds, with more to come). The service is called Pipeless (https://pipeless.io) and it is currently live (beta), and we encourage everyone to check it out. All feedback is greatly appreciated. It is called Pipeless because it removes the need to create complicated pipelines to power features/algorithms, by instead utilizing the flexibility of graph databases.
Pipeless was born out of the years of experience Tim and I have had working on devRant and from the desire we've seen from the community to have more insight into our technology. One of my favorite (and earliest) devRant memories is from around when we launched, and we instantly had many questions from the community about what tech stack we were using. That interest is what encouraged us to create the "about" page in the app that gives an overview of what technologies we use for devRant.
Since launch, the biggest technology powering devRant has always been our graph database. It's been fun discussing that technology with many of you. Now, we're excited to bring this technology to everyone in the form of a very simple REST API that you can use to quickly build projects that include real-time recommendations and activity feeds. Tim and I are really looking forward to hopefully seeing members of the community make really cool and unique things with the API.
Pipeless has a free plan where you get 75,000 API calls/month and 75,000 items stored. We think this is a solid amount of calls/storage to test out and even build cool projects/features with the API. Additionally, as a thanks for continued support, for devRant++ subscribers who were subscribed before this announcement was posted, we will give some bonus calls/data storage. If you'd like that special bonus, you can just let me know in the comments (as long as your devRant email is the same as Pipeless account email) or feel free to email me (david@hexicallabs.com).
Lastly, and also related, we think Pipeless is going to help us fulfill one of the biggest pieces of feedback we’ve heard from the community. Now, it is going to be our goal to open source the various components of devRant. Although there’s been a few reasons stated in the past for why we haven’t done that, one of the biggest reasons was always the highly proprietary and complicated nature of our backend storage systems. But now, with Pipeless, it will allow us to start moving data there, and then everyone has access to the same system/technology that is powering the devRant backend. The first step for this transition was building the new “subscribed” feed completely on top of Pipeless. We will be following up with more details about this open sourcing effort soon, and we’re very excited for it and we think the community will be too.
Anyway, thank you for reading this and we are really looking forward to everyone’s feedback and seeing what members of the community create with the service. If you’re looking for a very simple way to get started, we have a full sample dataset (1 click to import!) with a tutorial that Tim put together (https://docs.pipeless.io/docs/...) and a full dev portal/documentation (https://docs.pipeless.io).
Let us know if you have any questions and thanks everyone!
- David & Tim (@dfox & @trogus)53 -
You know what?
Young cocky React devs can suck my old fuckin LAMP and Objective-C balls.
Got a new freelance job and got brought in to triage a React Native iOS/Android app. Lead dev's first comment to me is: "Bro, have you ever used React Native".
To which I had to reply to save my honor publicly, "No, but I have like 8 years with Objective-C and 3 years with Swift, and 3 years with Node, so I maybe I'll still be able help. Sometimes it just helps to have a fresh set of eyes."
"Well, nobody but me can work on this code."
And that, as it turned out was almost true.
After going back and forth with our PM and this dev I finally get his code base.
"Just run "npm install" he says".
Like no fuckin shit junior... lets see if that will actually work.
Node 14... nope whole project dies.
Node 12 LTS... nope whole project dies.
Install all of react native globally because fuck it, try again... still dies.
Node 10 LTS... project installs but still won't run or build complaining about some conflict with React Native libraries and Cocoa pods.
Go back to my PM... "Um, this project won't work on any version of Node newer than about 5 years old... and even if it did it still won't build, and even if it would build it still runs like shit. And even if we fix all of that Apple might still tell us to fuck off because it's React Native.
Spend like a week in npm and node hell just trying to fucking hand install enough dependencies to unfuck this turds project.
All the while the original dev is still trying TO FIX HIS OWN FUCKING CODE while also being a cocky ass the entire time. Now, I can appreciate a cocky dev... I was horrendously cocky in my younger days and have only gotten marginally better with age. But if you're gonna be cocky, you also have to be good at it. And this guy was not.
Lo, we're not done. OG Dev comes down with "Corona Virus"... I put this in quotes because the dude ends up drawing out his "virus" for over 4 months before finally putting us in touch with "another dev team he sometimes uses".
Next, me and my PM get on a MS Teams call with this Indian house. No problems there, I've worked with the Indians before... but... these are guys are not good. They're talking about how they've already built the iOS build... but then I ask them what they did to sort out the ReactNative/Cocoa Pods conflict and they have no idea what I'm talking about.
Why?
Well, one of these suckers sends a link to some repo and I find out why. When he sends the link it exposes his email...
This Indian dude's emails was our-devs-name@gmail.com...
We'd been played.
Company sued the shit out of the OG dev and the Indian company he was selling off his work to.
I rewrote the app in Swift.
So, lets review... the React dev fucked up his own project so bad even he couldn't fix it... had to get a team of Indians to help who also couldn't fix it... was still a dickhead to me when I couldn't fix it... and in the end it was all so broken we had to just do a rewrite.
None of you get npm. None of you get React. None of you get that doing the web the way Mark Zucherberg does it just makes you a choad locked into that ecosystem. None of you can fix your own damn projects when one of the 6,000 dependency developers pushes breaking changes. None of you ever even bother with "npm audit fix" because if security was a concern you'd be using a server side language for fucking server side programming like a grown up.
So, next time a senior dev with 20 years exp. gets brought in to help triage a project that you yourself fucked up... Remember that the new thing you know and think makes you cool? It's not new and it's not cool. It's just JavaScript on the server so you script kiddies never have to learn anything but JavaScript... which makes you inarguably worse programmers.
And, MF, I was literally writing javascript while you were sucking your mommas titties so just chill... this shit ain't new and I've got a dozen of my own Node daemons running right now... difference is?
Mine are still working.34 -
Code review titles by year:
1990 - your code is using to much memory
1995 - your code is not running on window 95
2000 - your code is slow
2003 - your code don't have tests
2005 - your code is not 64 bit
2009 - your code is not using mvc patters
2010 - your code is not horizontal scalable
2011 - your code should be written in js
2015 - your code is not mobile ready
2020 - your code is racist24 -
"That's fair" 😂😂
Try visiting - https://nerdstagram.com
Follow me on Twitter for more such stuff - https://twitter.com/manbirmarwah11 -
Manager: "How long do you think this will take?"
My brain:
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Don't do it
Me: "Shouldn't take too long"4 -
Today, for fun, I wrote prime number generation upto 1000 using pure single MySQL query.
No already created tables, no procedures, no variables. Just pure SQL using derived tables.
So does this mean that pure SQL statements do not have the halting problem?
Putting an EXPLAIN over the query I could see how MySQL guessed that the total number of calculations would be 1000*1000 even before executing the query in itself and this is amazing ♥️
I have attached a screenshot of the query and if you are curious, I have also left below the plain text.
PS this was a SQL problem in Hackerrank.
MySQL query:
select group_concat(primeNumber SEPARATOR '&') from
(select numberTable.number as primeNumber from
(select cast((concat(tens, units, hundreds)+1) as UNSIGNED) as number from
(select 0 as units union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) unitsTable,
(select 0 as tens union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) tensTable,
(select 0 as hundreds union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) hundredsTable order by number) numberTable
inner join
(select cast((concat(tens, units, hundreds)+1) as UNSIGNED) as divisor from
(select 0 as units union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) unitsTable,
(select 0 as tens union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) tensTable,
(select 0 as hundreds union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) hundredsTable order by divisor) divisorTable
on (divisorTable.divisor<=numberTable.number and divisorTable.divisor!=1)
where numberTable.number%divisorTable.divisor=0
group by numberTable.number having count(*)<=1 order by numberTable.number) resultTable;9 -
Me: *selects text, Ctrl+c*
Me: *places cursor in next text box, Ctrl+v*
Computer: *does nothing*
Me: *selects text again, presses CTRL+C WITH FORCE*
Me: *places cursor in next text box again, presses CTRL+V WITH FORCE*
Computer: *pastes*
Me: "That's what I thought."19 -
I was writing tests at work and rather enjoying myself.
Boss insisted we all go home early because "holiday halfsies," so I semi-unhappily pack up and go home. At home, I write tests for a personal project instead.
Dev life.8 -
Toilets and race conditions!
A co-worker asked me what issues multi-threading and shared memory can have. So I explained him that stuff with the lock. He wasn't quite sure whether he got it.
Me: imagine you go to the toilet. You check whether there's enough toilet paper in the stall, and it is. BUT now someone else comes in, does business and uses up all paper. CPUs can do shit very fast, can't they? Yeah and now you're sitting on the bowl, and BAMM out of paper. This wouldn't have happened if you had locked the stall, right?
Him: yeah. And with a single thread?
Me: well if you're alone at home in your appartment, there's no reason to lock the door because there's nobody to interfere.
Him: ah, I see. And if I have two threads, but no shared memory, then it is as if my wife and me are at home with each a toilet of our own, then we don't need to lock either.
Me: exactly!12 -
Honestly, after using sublime, atom, brackets, WebStorm, and so many other IDEs/Text Editors, VSCode outshines all of them ❤️27
-
Worst dev I've interviewed?
"Archie" ran his own consulting business for almost 20 years. Prior to his interview, Archie sent HR (to send to us) his company's website, where he had samples of code for us to review (which was not bad, this guy did know his stuff).
What I found odd was Archie was the lone wolf at his company, but everything I found about him (the about page, his bio, etc), Archie was referred to as 'Mr. Archie Brown'.
Ex. 'Mr. Archie Brown began his humble career and 'Mr. Archie Brown is active in his church and volunteers his time in many charities ...'
Odd to refer to yourself in the third person on your own site, but OK, I like putting hot sauce on my mac & cheese (no judgement here).
Then the interview..standard stuff, then..
Me: "Given your experience, this is an entry level developer position. Do you feel the work would be challenging enough for you?"
Archie: "Yes, Mr. Archie Brown would have no problem starting at bottom. You see ..."
Almost any time he would reference himself, instead of 'me' or 'I', he would say 'Mr. Archie Brown'. As the interview continued, the ego and self-importance grew and grew.
My interview partner wanted to be done by using the escape clause, "PaperTrail, I'm good, do you have any questions?"
Yes, yes I do. I was having too much fun listening to this guy ramble on about himself. I made the interview go the full hour with the majority of time 'Archie' telling us how great he is.
The icing on the cake was my partner caught his gold cuff-links and tie-pin where his initials and how he kept raising his hands and playing with his tie to show us (which I totally missed, then was like "oh yea, that was weird")
After the interview, talking with HR:
HR-Jake: "How did it go?"
John: "Terrible. One of the worst. We would have been done in 10 minutes if PaperTrail didn't keep asking questions."
Me: "Are you kidding!? I had the best time ever. I wish I could have stayed longer."
HR-Jake: "Really? This guy was so full of himself I wasn't sure to even schedule with you guys. With his experience, I thought it deserved at least a round with you two. You think we should give him a chance?"
Me: "Hell no. Never in a million years, no. I never in my whole life met anyone with such a big ego. I mean, he kept referring to himself in the third person. Who does that?"
HR-Jake: "Whew!...yea, he did that in the phone interview too. It was a red flag for us as well."
Couple of weeks later I ran into HR-Jake in the break room.
HR-Jake: "Remember Mr. Archie Brown?"
Me: "To my dying day, I will never forget Mr. Archie Brown."
HR-Jake: "I called him later that day to tell him the good news and he accused me of being a racist. If we didn't give him the job, he was getting a lawyer and sue us for discrimination."
Me: "What the frack!"
HR-Jake: "Yep, and guess what? Got a letter from his lawyer today. I don't think a case will come in front of a judge, but if you have any notes from the interview, I'll need them."
Me: "What are we going to do?"
HR-Jake: "Play the waiting game between lawyers. We're pretty sure he'll run out of money before we do."
After about 6 months, and a theft conviction (that story made the local paper), Mr. Archie Brooks dropped his case (or his lawyers did).23 -
1. Start working in company that is celebrating something the same day you start new job.
2. Make sure they invite you.
3. Get drunk hard before event.
4. Puke on a CEO during his opening speech.
Mission accomplished you’re now a legend.8 -
Meeting with client.
Me: our solution does not require a central server, any computer (windows, Mac or Linux) on which you install our software can act both as a client and a server
Client: no we need to have all our data on our server
Me: sure, you can install our software on any computer
Client: no, we need it on our server
Me: ok then, we can make the needed changes to install our software on your server, it will cost an additional fee though
Client: very good then17 -
Coworker wrote a nice package and put it on Github, to share with other departments.
I link his package on our company Slack, mentioning a team, with text "What do you think of this one? Is it usable for you guys?"
Next thing I know I have to explain to an executive why I'm "posting pictures of seductive cartoon girls in company chat with disrespectful commentary"
It linked the Github profile picture of the developer in Slack. A fully clothed anime girl, nothing particularly lewd about it.
But I like stabbing back a bit, and confusing the fuck out of people in suits:
"Hate to say it, but a good majority of all the code the company runs on, is written by people known as weebs, who use their so called waifus as their GitHub profile picture. It is very common for open source Javascript packages, but since we recruited 50 extra devs it now also happens internally. It's not my thing either sir, but I'm afraid we have to embrace it... "
"But what about our female devs? What about Joanna, she's in your team? We have to think of diversity! Our investors are really in to diversity, we can't have a bro culture!"
"Sir, with all due respect, we have super diverse teams without even trying. The problem is... they're all millennials. They grew up on weird memes... and are probably ten steps further in embracing diversity compared to the rest of the company."
"Also, Joanna is the one who drew this particular picture. She's charging a €15 commission for profile pictures... Do you want one of your fursona, sir?"
"What is that?"
"Uh... nevermind. Let's... let's not go there"48