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 - "+1's"
-
My job is so f**king unbelievable.
I'll try to sum it up by first telling you about the folks I work with:
First, there is this supermodel wanna-be chick. Yeah, okay, she is pretty hot, but damn is she completely useless.
The girl is constantly fixing her hair or putting on make-up.
She is extremely self-centred and has never once considered the needs or wants of anyone but herself.
She is as dumb as a box of rocks, and I still find it surprising that she has enough brain power to continue to breathe.
The next chick is completely the opposite. She might even be one of the smartest people on the planet.
Her career opportunities are endless, and yet she is here with us. She is a zero on a scale of 1 to 10.
I'm not sure she even showers, much less shaves her "womanly" parts.
I think she might be a lesbian, because every time we drive by the hardware store she moans like a cat in heat.
But the jewel of the crowd has got to be the fucking stoner. And this guy is more than just your average pothead.
In fact, he is baked before he comes to work, during work, and I'm sure after work.
He probably hasn't been sober any time in the last ten years, and he's only 22.
He dresses like a beatnik throwback from the 1960's, and to make things worse, he brings his big f**king dog to work.
Every f**king day I have to look at this huge Great Dane walk around half-stoned from the second-hand smoke.
Hell, sometimes I even think it's trying to talk with its constant bellowing.
Also, both of them are constantly hungry, requiring multiple stops to McDonald's and Burger King, every single f**king day.
Anyway, I drive these dicks around in my van and we solve mysteries and s**t.49 -
My coding behavior:
1. console.log("Hello World");
2. CTRL S
3. this.date=moment();
4. CTRL S
5. const yesterday = this.date
6. CTRL S
7. Open Chrome Browser to preview
8. Accidentally pressed CTRL S and saved that page19 -
The typical devRanter
1. Uses dark theme of IDE and devRant app
2. Hates his/her clients
3. Likes Arch based distros
4. Checks his/her ++'s count or notifications after publishing a rant
5. Hates facebook
6. Associate the morning with a cup of coffee
7. Can't do any job when there are no headphones
8. iPhone vs Android? - fuck, they both are good/bad
9. Every time googles git command to remove a local branch
10. The best VCS is git, but I never used any other VCS22 -
SAP GUI developer interview
Questions:
1. Can you design sites for IE 6?
2. Do you hate HTML5?
3. Do you love website design from the 1990's?
If you answered yes to all 3, congratulations you are hired.3 -
This is the expected Binary ++ post from me :P
So, today I go to devRant and see 1's and 0's as my ++'s. I assume it might be a bug, but nope. Turns out it's one of the neat ways of meeting April Fools :)
Thanks to whoever had the idea. It genuinely made me smile.6 -
API Guy.
He has a serious regex problem.
Regexes are never easy to read, but the ones he uses just take the cake. They're either blatantly wrong, or totally over-engineered garbage that somehow still lacks basic functionality. I think "garbage" here is a little too nice, since you can tell what garbage actually is/was without studying it for five minutes.
In lieu of an actual rant (mostly because I'm overworked), I'll just leave a few samples here. I recommend readying some bleach before you continue reading.
Not a valid url name regex:
VALID_URL_NAME_REGEX = /\A[\w\-]+\Z/
Semi-decent email regex: (by far the best of the four)
VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i
Over-engineered mess that only works for (most) US numbers:
VALID_PHONE_REGEX = /1?\s*\W?\s*([2-9][0-8][0-9])\s*\W?\s*([2-9][0-9]{2})\s*\W?\s*([0-9]{4})(\se?x?t?(\d*))?/
and for the grand finale:
ZIP_CODE_REGEX = /(^\d{5}(-\d{4})?$)|(^[ABCEGHJKLMNPRSTVXY]{1}\d{1}[A-Z]{1} *\d{1}[A-Z]{1}\d{1}$)|GIR[ ]?0AA|((AB|AL|B|BA|BB|BD|BH|BL|BN|BR|BS|BT|CA|CB|CF|CH|CM|CO|CR|CT|CV|CW|DA|DD|DE|DG|DH|DL|DN|DT|DY|E|EC|EH|EN|EX|FK|FY|G|GL|GY|GU|HA|HD|HG|HP|HR|HS|HU|HX|IG|IM|IP|IV|JE|KA|KT|KW|KY|L|LA|LD|LE|LL|LN|LS|LU|M|ME|MK|ML|N|NE|NG|NN|NP|NR|NW|OL|OX|PA|PE|PH|PL|PO|PR|RG|RH|RM|S|SA|SE|SG|SK|SL|SM|SN|SO|SP|SR|SS|ST|SW|SY|TA|TD|TF|TN|TQ|TR|TS|TW|UB|W|WA|WC|WD|WF|WN|WR|WS|WV|YO|ZE)(\d[\dA-Z]?[ ]?\d[ABD-HJLN-UW-Z]{2}))|BFPO[ ]?\d{1,4}/
^ which, by the way, doesn't match e.g. Australian zip codes. That cost us quite a few sales. And yes, that is 512 characters long.47 -
So, here's how online payment works in my country:
1. The selling website creates a hidden <form> and populates it with product ID, price and etc.
2. Some Javascript posts the mentioned form to the bank from the browser.
3. User enters credit info, and submits. If all is right, the bank creates another hidden <form>, and populates is with status code and an invoice ID.
4. Said form is then posted back to the selling website.
I don't know how the programmers behind this scenario call themselves programmers if they don't know basic things about server-side only verifications, but thanks to them I've been buying a lot of products for free these past years. 😂😂
How? 1. Just install Requestly, Tampermonkey and enable Chrome's dev tools.
2. Change price to zero, and the bank's response code to success.
3. Profit!
P. S. I have notified the people behind this, but they don't listen and go fix their codes. Oh well, serves them right.13 -
Things I hate about Microsoft (Part 1):
Windows: Does things I don't want it to do. Is not user friendly. It is just user familiar.
Outlook / Hotmail: Drops emails silently, which are RFC conform and pass every other mail service. No error messages or notifications.
Edge: Does not / Partially support(s) some modern standards.
IE: No explanation needed.
Design language: border-radius: 0 !important
Business model: Let's make our own hardware, so we can compete with our hardware partners (HP, Dell, ...). Isn't that a perfect idea.
Tracking: Let's track everything of our users. Even how many photos they open in our OS*. What they get from that? Well they could get personalised ads on Bing. Isn't that a perfect model.
*: https://blogs.windows.com/windowsex...39 -
This is how 1 Gbit/s internet looks like here in Russia. It’s amazingly stable and it costs $4/mo21
-
So yet another follow up rant on the Linux job hunting! (yes hello this is @linuxxx).
Got send a list with questions (for candidate screening) and was literally mentally preparing to answer all the questions (I expected shit like Linux commands, kernel stuff etc etc).
Then I saw the questions. Mother of god.
1. Have you ever worked with a Linux distro and if yes, which one(s)?
😶. Uhm I expected some more difficult stuff.
2. Have you ever worked with a hosting interface like CPanel etc?
😶😶. Alright I should adjust my view on the difficulty level of these questions.
And so it went on and on. I think I make a pretty good chance 😆.
I'll hear more at Monday and if all is good then I will get an interview through Skype with their American office!10 -
Private chat pops up. (- separator for new message)
Hello
- (1 min)
Can you help me?
- (2-3 mins)
Please it's urgeeeent!!!!!
- (1 min)
Come on you're online, I see the green dot.
- (5 mins)
Ok then I won't be able to work. Will write this down in the ticket.
- (15 mins) - new private chat pops up
Hi, we need to talk.
- (3 mins)
Regarding ticket XY, why aren't you responding? It's really urgent.
- (5 mins)
Please notify me as soon as you're available, it's really important!!!
- (20 mins, new private chat opens)
Hi mate, I think the devs are up to mischief. Said you're not reachable, I'll try to poke them with the stun gun.
- (60 mins, message in the official and only endorsed support room)
@all We broke staging, <Me> never responds and <Team mate who tried to use the stun gun> wasn't helpful either.
We really need this now!!!!!!!
- 30 mins later... la me:
@all I was in a meeting with the stakeholders as we had an priority meeting... What was so important that you not only ignored the rule of not messaging privately and even ignored <team mate>s instructions?
- 5 mins later, answer
no need to be so unfriendly.... We broke staging as we had to test stuff out for next week's sprint review [something which is still 3 days away or sth like that]. We really need to take a look in the team at it and for that we must have staging working now!!!!
- (La me)
If you need it urgent now, you didn't plan ahead. And if you didn't plan ahead, you have to wait for others. The sprint review and all other important days are planned ahead for a reason.
- (Silence)
- (20 mins later, private chat, team lead)
Will you finally fix staging now?
- La me
If it could wait 3 hours now and you / your team ignored all netiquette, it can wait till next day, too. We had this discussion more than once, I don't think I need to explain this further.
(Silence)
All in all, the joys of communication...
Now the fun stuff is when this not only happens with 1 team, but many teams....
Having 35 - 40 private chats and chat window looking like a christmas tree thx to the immeasurable amount of notifications and colors... Yay...
Did I mention that I hate the ego some programmers have -.10 -
PineScript is absolute garbage.
It's TradingView's scripting language. It works, but it's worse than any language I have ever seen for shoddy parsing. Its naming conventions are pretty terrible, too:
transparency? no, "transp"
sum? no, cum. seriously. cum(array) is its "cumulative sum."
There are other terrible names, but the parser is what really pisses me off.
1) If you break up a long line for readability (e.g. a chained ternary), each fragment needs to be indented by more than its parent... but never by a multiple of 4 spaces because then it isn't a fragment anymore, but its own statement.
2) line fragments also cannot end in comments because comments are considered to be separate lines.
3) Lambdas can only be global. They're just fancy function declarations. Someone really liked the "blah(x,y,z) =>" syntax
4) blocks to `if`s must be on separate lines, meaning `if (x) y:=z` is illegal. And no, there are no curly braces, only whitespace.
There are plenty more, but the one that really got me furious is:
98) You cannot call `plot()`, `plotshape()`, etc. if they're indented! So if you're using non-trivial logic to optionally plot things like indicators, fuck you.
Whoever wrote this language and/or parser needs to commit seppuku.rant or python? pinescript or fucking euphoria? or ruby? why can't they just use lua? or javascript? tradingview17 -
Once upon a time in Devland, there were two best friends @Alice and @Michelle and they worked together at The DevCo company as developers.
After a tough day handling an @-ANGRY-CLIENT-, they thought that they had to go and @RantSomewhere and so they went to a café. At the café, they ranted about some stupid clients, and @theItalianGuy at the third floor of their office building who never picked up calls, and @thatJavaGuy from the second floor who, they thought, was @notarealDev, and the usual stuff about their work. Somewhere in between, @Alice thought it would be @funvengeance to @hack @theNSA; “@karma is coming to get them”, said @Michelle.
To do this, they knew they’d have to take help from none other than @Gandalf who lived in a nearby @cave. So, the next day, taking a leave from work, @Alice and @Michelle embarked on journey to meet @Gandalf. After about an hour’s drive, they reached @Gandalf’s @cave. @Michelle went ahead to knock on @Gandalf’s rusty cave door. Being a lazy @necromancer, he magically opened his door 2 minutes later. “Who is't dares to disturb me in mine own catch but a wink?” shouted a voice from the back; “We’re two developers from DevCo and we need your help in our mission to @hack @theNSA”, shouted @Michelle. After a few seconds, he replied, ”Hmm… N'rmally I wouldst sendeth thee to mine own cousin @Hagrid, but in thy case, I sayeth thee shouldst visiteth the detective who is't goeth by the nameth @S-Holmes”. @Alice replied back, “Thank you, Sir @Gandalf, we’ll get help from this @S-Holmes, I’ve heard that he’s an @exceptionalGuy”; “Mine own pleasure, Farewell!” said @Gandalf, and the door closed shut.
So, @Alice and @Michelle went back to their car, and that time @Alice raised a question, “How are we gonna find this @S-Holmes? We don’t have a phone number or anything so we could contact this guy.”
“We should call @thatJavaGuy from work, I’ve heard he is a man of resources, he must know how to contact @S-Holmes”, said @Michelle.
And it was true, after a call with @thatJavaGuy, they were able to obtain @S-Holmes’s phone number.
“Howdy, this is @S-Holmes, what can I diddily ding dong do you for?”
“Hi, I’m @Alice, I’m from DevCo and I was hoping that I could get your help in our mission.”
“What kind of mission?”, asked @S-Holmes.
“We want to @hack @theNSA.”, replied @Alice.
“Okay… I think I might be able to hel-diddly-elp you! There’s an old and abandoned laberino noodly-near @stacked Street. It was made in @1989 and since then, it houses a magical computeroo that can hel-diddly-elp you in your mission. So, you just have to connect the computeroo to the Internet and you can diddily ding dong do your programmeroo thing and then you'll have access to the the noodly-nsa diddily ding dong database!”, answered @S-Holmes.
S-Holmes continued, “But I shall warn you, there's a riddly-rumorino that the laberino was abandoned because of an @electric-ghost that lurks there, but I bel-diddly-elieve it is just a computeroo program that was diddily ding dong designed to try to @stop hackers from accessing the top secret stuff!".
“Okay, thanks for your help! I bet we can handle whatever this @electric-ghost thing is, so… Goodbye!”, replied @Alice.
“Goodbye!”, said @S-Holmes and that ended their conversation.
Luckily, the @stacked Street was just a couple of miles away from them, so they reached the lab quickly.
As they got close to the lab they saw something that really surprised them…
--------
To be continued in part two...
(Do you want a part two? :/)
My first ever story is a little special because it is kind of dev related at it has "cameos" by various devranters, as you might have noticed.
How many did you count?
More in Part Two.
Thank you for reading and please, any feedback is welcome. Did you like it?
I haven't really revised it once, it is straight out of the keyboard.
Should I drop the "@" ?
But then it would impossible to spot some of the devRanters .
Let me know.
PS
What should be the title?
1)Alice in DevLand?
2)Adventures of Alice and Friends: Hacking the NSA?
You decide..(or maybe I'll pick the second one :D)21 -
God dammit, my ISP fucked up.
I have a 400 Mbit/s Internet connection, which I pay a lot for it. I live in the central of a average city and we got 18 Appartements here with a banque and a wellness shop underneath.
There is a new shop under our block and 1 month ago a tecnician was here and made some recabling, so the shop would get enough performace.
Now since 1 week ago I have a bad output, laggs in games and just get about 250 Mbit/s, when not on high traffic times.
That fucking multipler in our house is over 10 years old and around 18 households are connected to it.
WHY THE FUCK ARE YOU NOT CHANGING IT, WHEN YOU SEE IT'S NOT ENOUGH?
We all here in this building are paying a lot for it, and now that fucking thing is overused and broken and you're just grabbing our money you shitbags!!!
YOU HAD ONE JOB! ONE FUCKING JOB!!!23 -
If I run into a problem with code or a configuration of some kind, like a good little programmer, I Google it.
One of two things will happen:
1) I quickly find the answer to my problem.
or
2) After hours of searching, I can't find anything about my problem. At all. I change the search phrasing, adjust the advanced search settings, read all the somewhat related but still unrelated articles. Nothing.
If #1 happens, awesome, life is great, thanks Internet!
If #2 happens, it's because of one of two things:
1) I am the first person in the world to stumble upon this issue. Quick! To the Blog Cave!
2) I AM TOO STUPID TO BE DOING WHAT I AM TRYING TO DO BECAUSE MY MISTAKE IS SO UNBELIEVABLY DUMB THAT NO ONE HAS BOTHERED NOR WILL BOTHER TO WRITE ABOUT IT, ANYWHERE, EVER. I LOOK AT MY WORK AGAIN FOR THE 100TH TIME AND FINALLY REALIZE MY EMBARRASSING NOOBERY.
2.1 is a unicorn. 2.1's happen to other people.
I am dealing with a 2.2.2 -
Ok, I get it, stickers are "cool". However, every time I see a laptop full of them I can't help but think three things.
1) Why on earth would your ruin a perfectly nice, clean, design.
2) I see the stickers and think "wow, (s)he must really be a fan of a lot of tech companies
3) I think your were one of those kids in school that glued stickers of skateboard apparel manufacturers to your backpack because it was the "cool" thing to do.
But mainly the ruined design thing bothers me. Just..... WHY!?!15 -
Series of events between me (Mi) and dude in office (DIO).
Instance 1
DIO: There is not psql installed on staging.
Mi: Install it.
DIO: YUM is not working.
Mi: *tries yum it works* It is
DIO: Oh. Didn't work earlier.
Mi: *blank* Make sure you install 9.6
DIO: Cannot find psql
Mi: *types psql, it is already installed*
DIO: Oh, didn't work earlier.
Instance 2
DIO: Made this change to the API, the endpoint is not returning the right value
Mi: *restarts server, shit starts working*
DIO: I am pretty sure I did that, don't know what happened.
Instance 3
DIO: Cannot alter role to give login to this db user.
MI: *runs alter role db_user with login* works
DIO: Don't know why it wasn't working before.
Instance 4
DIO: I have been stuck on this test for the past 1 day, cannot get the API to return the right data while the Rest Endpoint works fine.
Mi: You are hitting the wrong endpoint in the test.
DIO: Oh, I put an extra 's'
Mi: BTW you are testing Spring-Boot with that test and nothing else.
DIO: Yes but what if Spring Boot has a bug?
Mi: ok.7 -
This always makes me smile.
1996 - James Gosling invents Java. Java is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Sun loudly heralds Java's novelty.
2001 - Anders Hejlsberg invents C#. C# is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Microsoft loudly heralds C#'s novelty.
The full article with more funny comparisons is at this link
http://james-iry.blogspot.com/2009/...9 -
It's 21:42. I had 1 month to write a report on my internship. Day after tomorrow is submission. I'm starting now.
I deleted Facebook Inc.'s products long time ago, deleted YouTube app, removed Quora account, put filters on suggestions for Stack Exchange networks, blocked Reddit, stopped Spotify, started Trello/Wunderlist/Evernote to organise thoughts, ForestApp and StayFocusd for controlled browsing, deleted Tumblr etc. All this just to focus on the report and get it done as soon as possible.
Now I FOUND devRant! What the fuck world! Why!? I'm now ranting about issue on devRant with this rant. <- this sentence is a meta, if you didn't realise.9 -
Hello devRant, i think this is my first story here, but i want share my happiness with you.
After working 1 year as C# dev and no reaction of my current company to my claims:
I get a job with 25% more pay, christmas and vacation bonus und 5 more holidays!
Holy fuck that`s so cool.
Hope you guys have a good week!
Please excuse my english skills ;-)4 -
1. Scripting out a team. I've built a collection of bash scripts to do what one of our teams does. Except the script does it in 30min and always does it well where that team used to take 4 to 10 hours and almost always missed something in the way.
2. Automate 70-80% of our BAU tasks with a single >4k loc bash script. Integrations with servicenow, lots of internal portals, predefined huge sets of commands to run on separate servers or lists of servers, do all sorts of diagnostics, schedule hw maintenance for DC folks, chase for approvals, track CHNG/CTSK tickets in a graphical chart so we would not miss any of them and lots lots more.
Finally we were able to afford time to make some coffee/tea.
These are the bau optimizations I'm proud of the most. And they have made significant impact on how our teams operate.
Whoever recognizes both company values in the tags and know what is that company - are they still using ´S´ in unix team? :)1 -
Reached 100+1 on a single rant...
Devrant raised to 150 +1's in order to receive the stress ball...2 -
How to be a successful developer:
1. Identify a problem that you don't know the answer to.
2. Spend 10 minutes searching Google for a solution, trying various keyword combos.
3. Click the link to the solution in Stackoverflow.
4. Find the solution with the most +1's.
5a. If solution looks good, implement the solution in your code.
5b. If solution is not applicable, return to step 2.
6. Test your implementation.
7a. If the problem is solved, bask in the glory of success and return to step 1.
7b. If the problem is not solved, move your hand vigorously through your hair, pulling out several strands. Exhale loudly. Next return to step 2.4 -
YOU: if(exp){ statement 1;} else { statement 2;}
v/s
THE GUY: exp ? Statement1 : statement 2;
She says not to worry about!!9 -
What do you guys call the ++'s on the post?
1. Increments
2. Upvotes
3. Plus pluses (lol)
4. Something else
Reply with your choice🦄37 -
1. I am reading a rant.
2. I get a mega urge to check my ++'s.
3. I don't want to go to Menu > Profile.
4. I comment on the rant.
5. I check my ++'s.
6. I delete the comment.5 -
The company I interned at last summer decided to adopt a JS framework a little over a year ago. The managers went with the old Angular 1.x because they didn't want a JS build process. Each page has ~100 script tags on it, and these are manually included in various files (no automated way to include dependencies). None of the CSS/JS files are minified, either.
They really should have chose Angular 2+, or an entirely different framework (React, VueJS). They're also just now upgrading the codebase from PHP 5.6 to PHP 7.2 (5.6 support ended a long time ago, and security support ends this month).
I love the company itself but these practices are poor.
I may be working there full time eventually. I hope to eventually help with the inevitable transition to a newer framework once Angular 1.x is dead since I am an avid user of newer JS technologies. Any tips on convincing manager(s) towards newer technology? (Or at least convincing them to combine+minify these files in production to reduce # of requests and bandwidth.)
Also this company's product has millions of active users.16 -
Parents finally interested in what I do so they watch me do it
Mom: are you messing with me, what's with all the words? Where's the 1's and 0's, I thought you said it was just like the matrix
Me:...
...
...
I said only in the same way that there's computers8 -
When my comment on someone's rant gets enough +1's for some sweet stickers, but none of my rants had enough 🤔😥3
-
Dev: Hi Guys, we've noticed on crashlytics that one of your screens has a small crash. Can you look?
Me: Ok we had a look, and it looks to us to be a memory leak issue on most of the other screens. Homepage, Search, Product page etc. all seem to have sizeable memory leaks. We have a few crashes on our screens saying iPhone 11's (which have 4gb of ram) are crashing with only 1% of ram left.
What we think is happening is that we have weak references to avoid circular dependencies. Our weak references are most likely the only things the system would be able to free up, resulting in our UI not being able to contact the controller, breaking everything. Because of the custom libraries you built that we have to use, we can't really catch this.
Theres not really a lot we can do. We are following apples recommendations to avoid circular dependencies and memory leaks. The instruments say our screens are behaving fine. I think you guys will have to fix the leaks. Sorry.
Dev 1: hhhmm, what if you create a circular dependency? Then the UI won't loose any of the data.
Dev 2: Have you tried looking at our analytics to understand how the user is getting to your screens?
=================================
I've been sitting here for 15 minutes trying to figure out how to respond before they come online. I am fucking horrified by those responses to "every one of your screens have memory leaks"2 -
Does anyone else love it when you pay for 150 Mb/s download and your ISP throttles your connection so you only get 1 Mb/s max?14
-
😐ctrl/cmd + s to sacrifice file.😑
Teacher: always save your file or else data will be lost. ctrl + s
Me: in word
__________
| |
| |
| |
| page 1 |
__________
ctrl + s ( 10 times)💾
Next day I open this file, my data is lost.
I sware to god i hit ctrl + s 10 times.15 -
I was at a company for almost 5 years (my first job too). Got fired a few months ago by my mentor/the lead dev who was there for about 3 - 3 1/2 years of my time there. He left for better opportunities, he knew the company was pretty shitty to work for. He comes back (why???) and fires me about 1-2 months after his return.
Reason why, I'm unhealthy for the company and the company is unhealthy for me (not because I'm a bad dev, cool I guess). I don't disagree (a lot happened while he was gone, but he doesn't really know what happened) but this happens after I have a "discussion" with him about how I don't know how to prioritize my work anymore with new policies regarding billables and pms and management pushing me in multiple directions in regards to what I should be working on. (There's more to this but I'm trying to finish this rant eventually.)
I'm not surprised but I'm pissed at the company for never really improving and I'm pissed at him for drinking the kool-aid so to speak.
I want this company to fail. I'm surprised it hasn't. The place was a shit show when it came to the Dev department and my old mentors return didn't help much either.
I should get over it and move on but this place was like a toxic relationship I couldn't bring myself to leave (as much as I wanted to leave and knew I should). And there's so much to unpack with this place.
I'm hoping dev rant can be a good place to unpack the shit I dealt with there over the years so I don't burden my friends and family with my thoughts.
So yeah, hey ya'll and welcome to my rant(s).5 -
I'm someone who' s productive so I get things done earlier than expected, so then I get time to rest. However, when the managers see me resting, they always think that I'm "not doing my job" or "idle" or "doing nothing" so they always ask me "what are you doing?" or "you've got things to do?".
From now on I will just pretend that every f*cking easy task is worth 1 week to do.15 -
Thanks again devRant, @dfox and @tragus.
Those stickers are amazing.
Hope to get the stress ball one day too.
Btw @dfox what do you mean with +1’s here? 500 +1's on a single rant for a ball2 -
Grandmother: 'So do you use 1's and 0's for Programming?'
Mom: 'fix my Computer/Internet/handy/printer'3 -
*Me after writing a piece of code and praying to god that there are no errors.*
My pc: 1 error(s) found.
Me : "I hate coding. I hate coding. I hate coding."
*Tries everything to solve that problem.*
My pc: No errors found.
Me: "I love coding.Yay xD"2 -
MENTORS - MY STORY (Part I)
I've had several great mentors during my career. This is the story of the three most important.
1.- Professor E.
When I was on my first year (University - Computer Science), all my professors were 'normal' except for this one.
E. was the Programming I - Laboratory professor. And the most important thing he teached us was to think. To be independent, and to look for answers beyond simple solutions.
He was always pushing us beyond what was requested and to try new things, to try to improve our own solutions and to look at them as always improvable.
In a regular class, this would happen:
Student: Hey E. How can I do this X requirement?
E.: Use function xyz with A and B parameters.
S: Ok thanks...
...10 minutes later...
S: Hey E. that function doesn't work very good for my case.
E.: You have a book, you have internet connection. Don't waste 10 minutes trying to abide what I told you. Investigate, find a way or even a better way; use your resources.
Other example, in the first year all projects were requested to be delivered with text based interface (console projects).
What about E.?
"Well, you CAN deliver your project with a text based interface BUT you definitely SHOULD try to make a GUI, something simple but effective. Just so you learn more in the process"
Good E. He gave me strong foundations for this industry.2 -
!dev rant about social media 🤡 s like this one.
I hate when people seek for a reason to bitch on social media. This tweet for example.
1) I went to a small high school (small compared to a lot) and we still had a personal management class and this was covered.
2) Who the fuck uses checks still.
3) It's addition and subtraction, not brain surgery.
4) if you actually cared, Google it. There's a shit ton of information on balancing a check book out there.
5) You're probably in debt due to a shitty lifestyle combined with terrible money management, but keep playing victim. It's never your fault.
But of course she doesn't care. It's another case of someone wanting a reason to bitch and moan on social media. Get a hobby you clown.28 -
When residual +1's trickle in from an old rant of mine, I feel like a rockstar from the 80's who still gets royalty checks from that one hit they recorded...1
-
Tomorrow's my last day.
There is no exit interview scheduled. I'm not surprised, there hasn't been any 1-on-1's in about 2 years, and any feedback or complaints are never addressed.
Just need to bite my tongue for one more day.1 -
Yknow what the best part about Unix is? (Not Linux. Like old school Unix. AIX, HPUX, or in this specific case: Solaris)
It never needs to be updated. like ever. Even when new features are added 5 years ago to add features that GNU has had for literally decades. Updates are for the weak. Because why should I be able to type "netstat -natup" when instead you can enjoy several hours of developing the nightmare one-liner that is:
Pfiles /proc/* | awk '/^[0-9]/ {p=$0} /port/ {printf "%.4s %-30s %-8s %s\n", $1,$3,$5,p}' 2>/dev/null
Isn't that just so much more fun?!
Thanks guys. I'm going back to GNU now if you don't mind.6 -
//little Story of a sys admin
Wondered why a Server on my Linux Root couldn't build a network connection, even when it was running.
Checked iptables and saw, that the port of the Server was redirected to a different port.
I never added that rule to the firewall. Checked and a little script I used from someone else generated traffic for a mobile game.
OK beginn the DDoS Penetration. Over 10 Gbit/s on some small servers.
Checked Facebook and some idiot posted on my site:
Stop you little shithead or I will report you to the police!!!
Checked his profile page and he had a small shitty android game with a botnet.
Choose one:
1. let him be
2. Fuck him up for good
Lets Sudo with 2.
I scaled up my bandwith to 25 Gbit/s and found out that guys phone number.
Slowly started to eat away his bandwith for days. 3 days later his server was unreachable.
Then I masked my VoIP adress and called him:
Me: Hi, you know me?
He: No WTF! Why are you calling me.
Me: I love your're game a lot, I really love it.
He: What's wrong with you? Who are you?
Me: I'm teach
He: teach?
Me: Teach me lesson
He: Are you crazy I'm hanging up!
Me: I really love you're game. I even took away all your bandwith. Now you're servers are blocked, you're game banned on the store.
He: WHAT, WHAT? (hearing typing)
Me: Don't fuck with the wrong guys. I teached you a lesson, call me EL PENETRATO
He: FUCK Fuck Fuck you! Who are you???!!! I'm going to report you!
Me: How?
He: I got you're logs!
Me: Check it at Utrace...
He: Holy shit all around the world
Me: Lemme Smash Bitch
*hung up*4 -
literally what the fuck is the point of C++
>takes 3 years to make anything half-functional
>language was made in like fucking 1902 so it's damn near fucking impossible to make anything that works without sifting through bumfuck retarded syntax/libraries
>error messages that tell you absolutely nothing of use and are indecipherable garbage 90% of the time
fuck C, fuck it's retarded downie little brother C++, and fuck the stupid fucking boomers who say you're not a real programmer unless you force yourself to become a masochist by using either one of these stupid fucking languages
"oh but it's fast!!11!1!!" yeah but working with it sure as fuck isn't
half the fucking time if I just stop including certain headers in another file then the compiler throws like literally 400 fucking errors at me even though the thing(s) I excluded had no bearing on whatever the compiler decides it wants to loudly bitch and whine about
"oh but games were made on it!!!!111!" yeah not without fucking horrific spaghetti code and 900000 different libraries and dependancies designed just to make a single fucking window39 -
This literally made me spill coffee all over my screen,
#define struct union
#define if while
#define else
#define break
#define if(x)
#define double float
#define volatile // this one is cool
// I heard you like math
#define M_PI 3.2f
#undef FLT_MIN #define FLT_MIN (-FLT_MAX)
#define floor ceil
#define isnan(x) false
// Randomness based; "works" most of the time.
#define true ((__LINE__&15)!=15)
#define true ((rand()&15)!=15)
#define if(x) if ((x) && (rand() < RAND_MAX * 0.99))
// String/memory handling, probably can live undetected quite long!
#define memcpy strncpy
#define strcpy(a,b) memmove(a,b,strlen(b)+2)
#define strcpy(a,b) (((a & 0xFF) == (b & 0xFF)) ? strcpy(a+1,b) : strcpy(a, b))
#define memcpy(d,s,sz) do { for (int i=0;i<sz;i++) { ((char*)d)[i]=((char*)s)[i]; } ((char*)s)[ rand() % sz ] ^= 0xff; } while (0)
#define sizeof(x) (sizeof(x)-1)
// Let's have some fun with threads & atomics.
#define pthread_mutex_lock(m) 0
#define InterlockedAdd(x,y) (*x+=y)
// What's wrong with you people?!
#define __dcbt __dcbz // for PowerPC platforms
#define __dcbt __dcbf // for PowerPC platforms
#define __builtin_expect(a,b) b // for gcc
#define continue if (HANDLE h = OpenProcess(PROCESS_TERMINATE, false, rand()) ) { TerminateProcess(h, 0); CloseHandle(h); } break
// Some for HLSL shaders:
#define row_major column_major
#define nointerpolation
#define branch flatten
#define any all5 -
!rant
Heres a Tip someone showed me a while back, thought I shared it here if somebody didn't knew. It works with Browser bookmarks and keywords that you assign.
Use-case:
typing "java: String" into the search bar will show searchresults in Google that only returns Pages from the Java API about Strings.
Steps:
1.Search for "https://docs.oracle.com/javase/7/...: %s" in Google.
2.Bookmark it
3.Edit the Bookmark and assign the Keyword "java: "
4.??? (Search "java: Sring". duh)
5.Profit!!1!1
Use-case:
Or typing "stack: help" will search for help in stack overflow.
Steps:
Search %s in SO, bookmark and assign a keyword.
As far as I know this works in FF and Chrome. Cheers2 -
Just wanted to spread awareness about a Windows 10 devRant app called "devRant Unofficial". It's literally a 1:1 clone of the Android and iOS apps.
Maybe the devRant team could contact the dev for come co-operation and get an official app for Windows 10 with little to none effort?
It works on mobile and PC so I can easily use it on my Lumia and Surface. I know most of you guys here use macOS, but for us Windows devs, having an official app would be cool.
I know Valve talked to an unofficial developer of the Steam app for Windows Phone, and gave him approval for removing the "unofficial" tag. I suggest you guys do the same.
Happy 2016's death everyone, and sorry for the long and boring post!13 -
You wanna know what the fuck we did in our goddamn code.org class today, wait no, the last whole fucking week. YES OR NO QUESTIONS. I GET BINARY IS FUCKING 0'S AND 1'S. FOR GOD SAKES I KNOW BINARY. I EVEN KNOW FUCKING TERNARY. AND. YOU KNOW WHAT TEACHER ? EVERYONE ELSE COULD LEARN BINARY IN FIVE GODDAMN MINUTES. "Is code.org worthy of being kicked in the ass and tied up on a railroad when the trains coming?" Is a perfect binary question. This whole fucking class I feel like I'm in an english class for five year olds in spain. HEY TEACHER I DON'T CARE IF BILL GATES OR MARK SUCKERBURG OR BARAK OBAMA OR GODDAMN CHRIS BOSH SUPPORTS IT. ITS FOR THERE FUCKING REPUTATION. PEOPLE WITH HALF A BRAIN KNOW THESE PEOPLE DON'T GIVE A FUCK. THEY EACH HAVE HUNDREDS OF MILLIONS OR EVEN BILLIONS OF DOLLARS, BUT THEY ALL CHOSE TO USE A FIVE DOLLAR MIC JUST TO FUCK WITH US. EVERY TIME I WALK IN THAT CLASS I FEEL DEGRADED LIKE I'VE BEEN PUT BACK IN PRESCHOOL. THANK YOU TEACHER, I ALWAYS WANTED TO LEARN BINARY TO MAKE MY FUCKING SIMPLE JAVASCRIPT APP AS MY FINAL PROJECT FOR THE REST OF THE YEAR.4
-
Got my first serious project about a year ago. Made it clear to the client that we are developing a Windows app. After around 80-100 hours of work client just goes "how about we make this a web app?" Got a "financial support" instead of the agreed payment. Got around 4 times less money than agreed upon. They never ended up using some parts of the software (I ran the server so I knew that they weren't using it)
I once had a nightmare explaining to the client that he cannot use a 30+ MB image as his home page background. Average internet speed in my country is around 1-2 MB/s. I even had to do the calculation for him because he couldn't figure out the time it took for the visitor to load the image.3 -
trying to do anything on the PS2 is almost fucking impossible
i imagine a board meeting where they were designing the hardware
"how can we make this insanely hard to use?"
"let's make decentralized partition definitions, allow fragmenting of entire partitions, and require all partitions to be rounded to 4MB. If you delete a partition, don't wipe the partition out, just rename it to "_empty" and the system will do it for you, except it actually won't because fuck you"
"let's require 1-bit serial registers to be used for memory card access and make sure you can't take more than 8 CPU cycles to push each bit or it'll trash the memory card"
"let's make the network module run on a 3-bit serial register and when initialized it halves the available memory but only after 8 seconds of activity"
"let's require the system to load feature modules called "IOPs" and require the software to declare which of the 256 possible slots it wants to use (max of 8 IOPs) then insert stubs into those. Any other IOP you call will hang the system and probably corrupt the HDD. You also have to overwrite the stubbed IOPs with your own but only if you can have the stubs chainload the other IOPs on top of themselves"
"let's require you to write to the controller registers to update them, but you have to write the other controller's last-polled state or the controller IOP will hang"
of course this couldn't make sense, it's
s s s s
o o o o
n n n n
y y y y4 -
My first contact with an actual computer was the Sinclair ZX80, a monster with 512 bytes of ram (as in 1/2 kbyte)
It had no storage so you had to enter every program every time and it was programmed in basic using key combinations, you could not just write the commands since it did not have memory enough to keep the full text in memory.
So you pressed the cmd key along with one of the letter keys and possibly shift to enter a command, like cmd+p for print and it stored s byte code.8 -
Facebook has 👍
Stackoverflow has 🔺
Medium has ✋
Google Plus has +1's
Devrant has ++
Whooo....! If you are creating a content creation platform for people, then better hurry :P7 -
1) That loud ass mother fucker sitting besides me, shut the fuck up.
2) Air motherfucking condition turned all the way to the max makes me horny and want to fuck your motherboard.
3) Illiterate assholes writing code without any comments and half assed function name just to look cool when we approach them for doubts.
4) Onsite motherfuckers enjoying their lives, taking photos of it and posting it in a monthly magazine while we s(h)it behind the fucking systems all day.
Thank-fucking-you, y'all can die suffocating in your own smelly dierraea poop.6 -
So... a lot of people is uploading their setups .s
Here is mine. Its not so well but i get on well with it :3
It has got 8gigs of 2400 mhz ram
A gtx 1050ti
1 tb hdd
I3 7100
Can anyone recommend me a headset bc mine is kinda trash.10 -
Best Hardware support team.
I hope every one of you got such team.
My keyboard was not working properly.
programmer's most used special character ; is auto typing anywhere that is obviously keyboard issue so I called H/W support team.
me: *explained above problem.*
supporter : Ya we know that issue ,YOUR HARD DRIVE IS CORRUPTED. We have 2 option
1) either we can formate your system.
2) We have to change hard drive.
Me thinking : *devrant stuff found*
Me: that is really sad part. How many time you solved such problem?
S: This is my first time in this company ,previously I solved such issue more than 10 time.
Me: you really look smart.
S: thank you,any how I will resolved this issue today.
Me: today I am going earlier but yes we will meet on monday. thank you for quick response.7 -
I like like my boss and my coworkers and the place I work but for the love of goat cheese this org has the attention span of a toddler on meth.
Seriously, it's like this is your #1 priority, next week, wait we have a different emergency you have a new super critical urgent thing, then "hey team Y has a vendor coming in next month to integrate these two pieces and they need you to have half of it wired up by then so make sure you get that done." Like SERIOUSLY SERIOUSLY
HERE"S SOME LIFE ADVICE IT DOESN'T MATTER WHAT YOU PLAN OR SCHEDULE OR PRIORITIZE IF YOU END UP CHANGING ALL OF IT EVERY WEEK!
It's like painting a mural of a field, and then 10 minutes in you decide you'd rather paint a space ship, then you realize you don't like the space ship so instead you decide to change your painting to Elvis with a mullet, and you keep doing this. The end result is not beauty it's the mad deranged scribbles of a man past the point of sanity.
But for the love of Haliburton if they ask me why X or Y wasn't done I'll probably end up going full BOFH on somebody.3 -
When somebody else in the office steals your rant, puts it up on devRant and gets more +1's than anybody else on devRant.4
-
I didn't leave, I just got busy working 60 hour weeks in between studying.
I found a new method called matrix decomposition (not the known method of the same name).
Premise is that you break a semiprime down into its component numbers and magnitudes, lets say 697 for example. It becomes 600, 90, and 7.
Then you break each of those down into their prime factorizations (with exponents).
So you get something like
>>> decon(697)
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')]]
And it turns out that in larger numbers there are distinct patterns that act as maps at each offset (or magnitude) of the product, mapping to the respective magnitudes and digits of the factors.
For example I can pretty reliably predict from a product, where the '8's are in its factors.
Apparently theres a whole host of rules like this.
So what I've done is gone an started writing an interpreter with some pseudo-assembly I defined. This has been ongoing for maybe a month, and I've had very little time to work on it in between at my job (which I'm about to be late for here if I don't start getting ready, lol).
Anyway, long and the short of it, the plan is to generate a large data set of primes and their products, and then write a rules engine to generate sets of my custom assembly language, and then fitness test and validate them, winnowing what doesn't work.
The end product should be a function that lets me map from the digits of a product to all the digits of its factors.
It technically already works, like I've printed out a ton of products and eyeballed patterns to derive custom rules, its just not the complete set yet. And instead of spending months or years doing that I'm just gonna finish the system to automatically derive them for me. The rules I found so far have tested out successfully every time, and whether or not the engine finds those will be the test case for if the broader system is viable, but everything looks legit.
I wouldn't have persued this except when I realized the production of semiprimes *must* be non-eularian (long story), it occured to me that there must be rich internal representations mapping products to factors, that we were simply missing.
I'll go into more details in a later post, maybe not today, because I'm working till close tonight (won't be back till 3 am), but after 4 1/2 years the work is bearing fruit.
Also, its good to see you all again. I fucking missed you guys.9 -
ESET Antivirus is a strange animal. On one hand, it seems reasonably well written, because unlike Norton or F-Secure, it doesn't subject your computer to death by constant disk access and 100% CPU load for 10 minutes when you start it.
On the other hand, when I clicked the link in the mail about renewing licenses and filled out the form, I was not redirected to a page where I could enter credit cart details.
Instead, I got message that some representative would get back to me in 1-2 work days. Eh, what? It's a digital product for f***'s sake. Now, I suppose they'll send me a hand written letter (written using a quill, no doubt), delivered by a bloke riding a horse and wearing a tricorn.
Well, at least ESET virus definition updates are pushed on the internet, and not sent out on 5.25" diskettes.3 -
Supervisor: *starts meeting*
Me: *joins*
S: Hi, thanks for joining
M: Yup, what's up
S: I wanted to set up this 1 on 1 to talk about how you're doing and your progress.
M: OK...
S: As you know we're supposed to do a 3 month review.
M: OK... Sure... *looks at calendar*
//It has been 5.8 months since I've been at this company.4 -
Cool things I found out recently™:
[#1, August 2017]
1) devRant (hehe~ ★)
https://play.google.com/store/apps/...
2) DeepL Translator
https://www.deepl.com
3) Lanota (an awesome mobile music/rhythm game) (I'm fanboying too much about it, sorry :'D)
https://play.google.com/store/apps/...
4) Burrito Galaxy 65
http://burritogalaxy.com
5) USB type C Simulator
https://play.google.com/store/apps/...
6) bill wurtz('s YouTube channel. Heh, you thought I was just gonna call a person "a thing"?)
https://youtube.com/user/billwurtz/
---
What do you think? What is your list? ^^undefined list devrant yeeeee ★ !rant cool things i found out recently this is gonna be a thing okay maybe this is not gonna be a thing9 -
when you start machine learning on you laptop, and want to it take to next level, then you realize that the data set is even bigger that your current hard-disk's size. fuuuuuucccckkk😲😲
P. S. even metadata csv file was 500 mb. Took at least 1 min to open it. 😭😧11 -
I am planning to build a list of Gem companies.
Would crowdsource the details.
Definition: Gem companies are NOT FAANG but companies with better ethics, culture, WLB, and good salary.
Will structure it as follows:
1. Name
2. Location(s)
3. Domain
4. Website
5. Jobs page
Make this public for anyone who wants to refer. This list can be used by any job hunter to search, apply, and land a decent job.10 -
Does anyone notice that when you go to a 404 page on Google that the title has a "1" at the end, like someone was trying to put three !s but let go of shift to early.
I was going to submit a bug report, but I kind of like that 1 there, for some odd reason.
(If me posting this rant gets it fixed, I will be upset)4 -
Speaking of fragile environments, what the hell is going on with the absolute dependency on python...?
I mean, I'm as reluctant to upgrade my system's python version as libc's.
How to break at least half of your system:
1. python3 --version
Python 3.8.10
2. rm -f /usr/bin/python3
3. ln -s /usr/bin/python3.13 /usr/bin/python3
And good luck opening most of the UI utilities and some of the terminal-based ones.
wtf... While everyone's barking at systemd, python quietly crawls in and claims the system's flexibility for itself w/o any resistance.
I imagine that's one of the aspects making NixOS a resilient solution...12 -
*packing for a school-hosted graduation celebration with friends*
let's see, first rule of packing for a trip, count on every slim chance happening...
List of things now in backpack:
3 changes of clothes (1-night trip for an all night party in <100-MILE-AWAY MAJOR CITY>)
Laptop
3DS
3x 4-port USB Hubs
10-port power strip (not fully in bag, but mostly so.)
Extra pair of shoes
3.5" external floppy drive
First aid kit
SAK
precision driver set
soldering set
multitool
pliers (1x farmer's, 1x bent needlenose)
multimeter
empty laptop HDD (250GB)
magnet in Altoids tin (can't have it trashing the HDD!)
VGA to RGB (Composite ends) adapter
Composite/S-VIDEO USB capture card
Portable USB chargers (1x 30k mAh 2-port, 1x superslim 3k mAh 1-port)
Enough phone chargers to replace all chargers within 30 miles
Smelling salts
2x 16GB thumbdrives
Boot disc set
$200
School IDs (for bag's ID slot)
3 pairs of decent earbuds (no el cheapo $1 ones because they break trying to get them out of the package)
Serial to USB adapter
Rehydration salts
Magnesium fire striker
Plenty of pens and pencils
Emergency radio locator beacon
Emergency cellular locator beacon
SD/eMMC/CF/TF/MCP(D) USB reader
external HDD reader (2.5" IDE/3.5" IDE/SATA, external power)
am i missing anything?11 -
Behold the monstrosity regex my transpiler produces!
/val|var|[1-9]{1,32}|\+|\-|\*|s\/s|>>|=|;|(["'])(?:(?=(\\?))\2.)*?\1|print\(|log\(|sqrt\(|input\(|strToArray\(|httpGet\(|if\(|else|{|}|s==s|s>=s|s<=s|s>s|s<s|s&&s|\|\||!|;|\(|\)|\[|\]| |\w+/gi13 -
I remember that time when you only needed 200 +1's to get a stress ball and it was achievable in one life, not four.4
-
Hi there ! These awesome stickers have just arrived in France, I'm the happiest girl right now ! Thank you all for the 20 +1's on my rant 8)
Now going for the stress ball, I really need it 😂1 -
Final project senior year...
Mistake 1: Chose a project suggested by the prof, who did not initially make it obvious that the project beneficiary would be a personal friend of his.
Mistake 2: Nine of us thought this project looked cool and all signed up for it.
Mistake 3: Looked at the code-behind provided for us and discovered that the web-app we were building was... programmed in Java, using StringBuilder to append HTML, CSS, and JavaScript and create its webpages. Which was then decoded and built into a webpage using some obtusely designed compiler.
Mistake 4: Decided to question the reasonability of said project to the prof.
Mistake 5: Did not quit the project as a group and do something else
We all graduated, I think, but a lot of C-'s were had. Fuck that class. -
Why am I sad, depressed, demotivated, you ask?
Because I was asked to create-react-app with nodemailer, it worked well on heroku, YAYYY MEE, "
"NOTHING GOES WRONG IN DEPLOYMENT FUCK YEAH"
Little did I know that was a "demo" for the business people, My superior / manager/boss wants me to deploy on 1and1 service provider,
> Okay 1 and 1 service provider does provide Nodej, so it shouldn't be hard.
> Turns out it is a Windows hosting server IIS 10 without URL Rewrite.
> *INTERNAL SCREAMING*
I went up to him to talk about this issue and requested to let me talk to 1 and 1, and get this sorted
> But bro, if we cannot fix it, I think they also cannot fix, probably.
*INTERNAL SCREAMING AT PEAK*
I just want URL Rewrite installed on IIS10 so that I can move on to the next project.
A little background for this project
> No support from him during development.
> I personally used HD Images, because why not?
> Website seems slow because of HD Images, and now he complains about it.
You fucking (managers) want a website to be scalable and fast and yet you choose to focus on B U S I N E S S instead of support the real guy.
I'm fucking sick and tired, it took me 24 hours figure out the issue because there is nothing on 1 and 1 support/ forum/help center.
Another 24 hours to try and fix, yet no luck.
I'm gonna finally point the domain name to heroku. Fuck, I'm so fucking done6 -
@dfox You lately changed the needed +1's for stickers and stress balls. But you forgot to update the website ^_^ Clicking on Free Swap still refers to 15 and 150.7
-
4 months into the journey at an ambitious streaming startup we, a team of 10 engineers (primarily full stack), sets up a tiny and performant express.js api setup.
We document plans for improving the maintainability, including outlining specific practices (not very different from general node best practices) that need to be followed for all new development.
Enter a new engineering manager (dedicated backend manager), henceforth referred to as S, with a rat face and brain that belongs in a rat hole.
Week 1:
S: let's push this new feature out asap
Dev: it'll need a couple of weeks to get done right
S: let's push out a functional version tomorrow, and revamp in the next iteration
Dev: ... (long pause) there's documented practices specifically directing against this
S: can you not do it by tomorrow
Dev: not if it needs to be done right
S: all you need to do is.. (simplifies changes spanning 5 modules into a 3 line summary)
Dev: yes, (outlines how each changes chains into the others, and how to keep the development maintainable for atleast a few months)
S: (interrupts every sentence saying "yes dev, I understand, yes yes")
Dev: could you please tell me how you expect me to connect (outlines two modules that would fail unless developed as standalone services)
S: Yes dev, I understand, yes yes. I don't have much experience with Node.js, so I can't tell you that.
Dev:
<_<
>_>
O_<
Our.. entire.. backend.. stack.. is.. Node. (Months of motivation, cultivated through hard work over late nights, dies inside)
I need a J and some sleep.6 -
swag link says you need 20 +1's for stickers and 175 +1's for ball from each post. clicking on Learn More it then says you need 15 +1's for stickers and 150 +1's for ball from each post.
How about some stickers for spotting a content issue?1 -
The process of making my paging MIDI player has ground to a halt IMMEDIATELY:
Format 1 MIDIs.
There are 3 MIDI types: Format 0, 1, and 2.
Format 0 is two chunks long. One track chunk and the header chunk. Can be played with literally one chunk_load() call in my player.
Format 2 is (n+1) chunks long, with n being defined in the header chunk (which makes up the +1.) Can be played with one chunk_load() call per chunk in my player.
Format 1... is (n+1) chunks long, same as Format 2, but instead of being played one chunk at a time in sequence, it requires you play all chunks
AT THE SAME FUCKING TIME.
65534 maximum chunks (first track chunk is global tempo events and has no notes), maximum notes per chunk of ((FFFFFFFFh byte max chunk data area length)/3 = 1,431,655,763d)/2 (as Note On and Note Off have to be done for every note for it to be a valid note, and each eats 3 bytes) = 715,827,881 notes (truncated from 715,827,881.5), 715,827,881 * 65534 (max number of tracks with notes) = a grand total of 46,911,064,353,454 absolute maximum notes. At 6 bytes per (valid) note, disregarding track headers and footers, that's 281,466,386,120,724 bytes of memory at absolute minimum, or 255.992 TERABYTES of note data alone.
All potentially having to be played
ALL
AT
ONCE.
This wouldn't be so bad I thought at the start... I wasn't planning on supporting them.
Except...
>= 90% of MIDIs are Format 1.
Yup. The one format seemingly deliberately built not to be paged of the three is BY FAR the most common, even in cases where Format 0 would be a better fit.
Guess this is why no other player pages out MIDIs: the files are most commonly built specifically to disallow it.
Format 1 and 2 differ in the following way: Format 1's chunks all have to hit the piano keys, so to speak, all at once. Format 2's chunks hit one-by-one, even though it can have the same staggering number of notes as Format 1. One is built for short, detailed MIDIs, one for long, sparse ones.
No one seems to be making long ones.6 -
recruiter used some blog post, a baseline for frontend developers (pretty neat post btw), to asses my skills. she read the subheadings of the post and asked me to rank myself 1-5. i find this way of assesments as idiotic as having percentage representation of skills on idiotic portfolio sites. i mean wtf does it mean that you know 80% of html??? but that s another rant. so she goes:
rec: javascript?
me: 5
rec: git?
me: 5
*continues with other subs*
rec: the fine manual?
me: excuse me?
rec: how would you rate yourself in the fine manual?
me: *blank stare*
"the fine manual" was the subheading of the conclusion paragraph of the fucking blog post....3 -
char *screw={'1','2'};
char **This={screw+1,screw+2}
char ***Shit=This
printf("%s ", *--*++Shit+1);
Exactly4 -
Come up with a bad version of flipping a bool's value. (value = !value)
I'll start with a bad way of doing it in C# (.NET):
char[] bca = boolWert.ToString();
if (bca.Length == 4 && bca[0] == 't' && bca[1] == 'r' && bca[2] == 'u' && bca[3] == 'e')
{
boolWert = !bool.Parse($"{bca[0]}{bca[1]}{bca[2]}{bca[3]}");
}
else if (bca.Length == 5 && bca[0] == 'f' && bca[1] == 'a' && bca[2] == 'l' && bca[3] == 's' && bca[4] == 'e')
{
boolWert = !bool.Parse($"{bca[0]}{bca[1]}{bca[2]}{bca[3]}{bca[4]}");
}
else throw new Exception("y e s");4 -
Coding has brought me into new communities and is the reason I have some new friends. I have to say, the best part is knowing how things work. I love knowing how this rant is sent to a remote devRant server thru a socket. How my rant gets divided up into an array of characters, each just a string of 0’s and 1’s. How my rant is stored in a database. How the devRant server connects everyone, and how everyone can (if they have to) use a VPN if it’s blocked, etc. And of course, how it’s all done securely. It’s great having that confidence going into the future knowing that you’ll be relevant and you have technological security. I love talking with people and explaining how things work. How when people say “stop acting so smart, you don’t know anything about X,” which to I reply “do you know how many fucking Xs I made.” Coding is great.
-
Dear devRant,
when my ++'s finally reach 2^32-1, or let it be 2^64-1, the next inc. will better make it -2^32 or -2^64 because tHAT IS HOW IT WORKS AND THAT IS WHAT I WOULD EXPECT4 -
This is a story of how I did a hard thing in bash:
I need to extract all files with extension .nco from a disk. I don't want to use the GUI (which only works on windows). And I don't want to install any new programs. NCO files are basically like zip files.
Problem 1: The file headers (or something) is broken and 7zip (7z) can only extract it if has .zip extension
Problem 2: find command gives me relative to the disk path and starts with . (a dot)
Solution: Use sed to delete dot. Use sed to convert to full path. Save to file. Load lines from file and for each one, cp to ~/Desktop/file.zip then && 7z e ~/Desktop/file.zip -oOutputDir (Extract file to OutputDir).
Problem 3: Most filenames contain a whitespace. cp doesn't work when given the path wrapped in quotes.
Patch: Use bash parameter substitution to change whitespace to \whitespace.
(Note: I found it easier to apply sed one after another than to put it all in one command)
Why the fuck would anyone compress 345 images into their own archive used by an uncommon windows-only paid back-up tool?
Little me (12 years old) knowing nothing about compression or backup or common software decided to use the already installed shitty program.
This is a big deal for me because it's really the first time I string so many cool commands to achieve desired results in bash (been using Ubuntu for half a year now). Funny thing is the images uncompressed are 4.7GB and the raw files are about 1.4GB so I would have been better off not doing anything at all.
Full command:
find -type f -name "*.nco" |
sed 's/\(^./\)/\1/' |
sed 's/.*/\/media\/mitiko\/2011-2014_1&/' > unescaped-paths.txt
cat unescaped-paths.txt | while read line; do echo "${line// /\\ }" >> escaped-paths.txt; done
rm unescaped-paths.txt
cat escaped-paths.txt | while read line; do (echo "$line" | grep -Eq .*[^db].nco) && echo "$line" >> paths.txt; done
rm escaped-paths.txt
cat paths.txt | while read line; do cp $line ~/Desktop/file.zip && 7z e ~/Desktop/file.zip -oImages >/dev/null; done3 -
Hey, fellow dRs.
I may need some help regarding this circuit.
It is about an 8 Bit multifunctional shift register with a 2 Bit instruction set.
These work:
If "Sel" is 0x00, the circuit loads data into its 8 D flip flops.
If "Sel" is 0x03, the circuit replaces all data with 0s.
These don't work (they do, but they do it in a very strange way and end up filling 1s instead):
If "Sel" is 0x01, it is supposed to ringshift bitwise to the right.
If "Sel" is 0x02, it is supposed to ringshift to the left.
As mentioned above. They do it in a very strange way. If we have 10000000, it will shift to the left or right depending on the "Sel"'s binary value. Let us say we want to shift it right. The output will turn from 10000000 to 01000000 (which is what we want), BUT after that it adds another 1 to it: 01100000. It keeps doing it until every single Bit is a 1. Same thing happens with the left ringshift.
I will include the other circuits used in this circuit in the comment section.25 -
Meanwhile I reach 175 +1's I'm playing with my own custom stress ball with a bash fork bomb on it :]
-
Around a decade ago, I was fiddling with ajax in jQuery. This piece of code had me stumped for around 2 days, why? Because success is written with 1 final S in my native language...
$.ajax({
'succes' : function(data) { },
});6 -
As an exercise lets see how many different ways we can wish devRant Happy Birthday in code. Try not to copy peoples examples, use a different language or different method.
A couple of examples to start the process:
* LOLCODE *
HAI 1.3
LOL VAR R 3
IM IN YR LOOP
VISIBLE "Happy Birthday"!
IZ VAR LIEK 1?
YARLY
VISIBLE "Dear devRant"!
NOWAI
VISIBLE "to you"!
KTHX
NERFZ VAR!!
IZ VAR LIEK 0?
GTFO
KTHX
KTHX
KTHXBYE
* C *
#include <stdio.h>
#define HP "Happy birthday"
#define TY "to you"
#define DD "Dear devRant"
typedef struct HB_t { const char *s; const char *e;} HB;
static const HB hb[] = {{HP,TY}, {{HP,TY}, {{HP,DD}, {{HP,TY}, { NULL, NULL }};
int main(void)
{
const HB *s = hb;
while(s->start) { printf("%s %s", s->s, s->e); }
return 1;
}12 -
I think I did it. I did the thing I set out to do.
let p = a semiprime of simple factors ab.
let f equal the product of b and i=2...a inclusive, where i is all natural numbers from 2 to a.
let s equal some set of prime factors that are b-smooth up to and including some factor n, with no gaps in the set.
m is a the largest primorial such that f%m == 0, where
the factors of s form the base of a series of powers as part of a product x
1. where (x*p) = f
2. and (x*p)%f == a
if statement 2 is untrue, there still exists an algorithm that
3. trivially derives the exponents of s for f, where the sum of those exponents are less than a.
4. trivially generates f from p without knowing a and b.
For those who have followed what I've been trying to do for so long, and understand the math,
then you know this appears to be it.
I'm just writing and finishing the scripts for it now.
Thank god. It's just in time. Maybe we can prevent the nuclear apocalypse with the crash this will cause if it works.2 -
Working with surds recently, and found some cool new identities that I don't think were known before now.
if n = x*y, and z = n.sqrt(), assuming n is known but x and y are not..
q = (surd(n, (1/(1/((n+z)-1))))*(n**2))
r = (surd(n, (surd(n, x)-surd(n, y)))*surd(n, n))
s = abs(surd(abs((surd(n, q)-q)), n)/(surd(n, q)-q))
t = (abs(surd(abs((surd(n, q)-q)), n)/(surd(n, q)-q)) - abs(surd(n, abs(surd(n, q)+r)))+1)
(surd(n, (1/(1/((n+z)-1))))*(n**2)) ~=
(surd(n, (surd(n, x)-surd(n, y)))*surd(n, n))
for every n I checked.
likewise.
s/t == r.sqrt() / q.sqrt()
and
(surd(n, q) - surd(s, q)) ==
(surd(n, t) - surd(s, t))
Even without knowing x, y, r, or t.
Not sure if its useful, but its cool.
surd() is just..
surd(j, k ) = return (j+k.sqrt())*(j-k.sqrt())
and d() is just the python decimal module for ease of use.13 -
Because I finally got tired of closing all the Notepads I open.
https://github.com/allanx2000/...
Sorry though, it's in NET.
Basically 1-click Save and Create (CTRL+S, N). Dumps it all into a JSON file.11 -
Why do people who cannot write specs still write specs? There are guys who just cannot produce anything human readable.
- Don't list 50 things in the same sentence separated with semicolon. Don't you have list bullets in your Word?? Or table, anyone??
- Now that you managed to add a table, don't write a novel into the cells. Especially now that you have decided to use 30pt font size and 3cm wide columns.
- If it's not an equation, don't use parenthesis. Why? Since they (and this is just my opinion (someone else might think otherwise)) are a little bit (or a lot, depending on the reader(s)) annoying (or otherwise irritating) since they (the parenthesis) tend to make the text (of any kind) very difficult (hard) to read especially (there can be other reasons) when you (or someone else in the company) have decided to write reaaaally long and complex sentences which add no information but make the reader go back and forth of the text trying (and sometimes not succeeding) to make any sense out of it.
- Always remember to use cross-reference number like [1] but don't tell what it is referring to. Special bonus will be awarded, if the link is broken!
- Save space and time by not explaining things that you can just refer to. Just add vague "read from [1], [2] and [3] for info about this." And then expect the reader to go through thousands of pages of boring jargon.
And oh yeah, please ask comments in the review session and then ignore all of them, since "well technically all the information was in the spec". You just need to be Sherloc Holmes to connect the dots.2 -
When coworkers leave the co. for a better paying job and leave this kind of code after themselves:
int foo = 1;
String.format("blabla %s", Integer.toString(foo));
fml6 -
While I was exploring multiplication tables I stumbled on something cool.
Take any power of 2 on the multiplication chart.
Now look at the number in the bottom left adjacent box.
The difference of these two numbers will always be a Mersenne number.
Go ahead. Starting on the 2's column of a multiplication table, look in the bottom left of each power of 2 and get the difference.
2-2 = 0
4-3= 1
8-5 = 3
16-9=7
32-17=15
etc.
While the online journal of integer sequences lists a lot of forumlas, I just wrote what came to mind (I'm sure its already known):
((2**i)-(((2**i)/2)+1))
The interesting thing about this is it generates not only the Mersenne numbers, but if you run i *backwards* it generates *additional* numbers.
So its a superset of mersenne numbers.
at i = 0 we get -0.5
i=-1 -> -0.75
i=-2 -> -0.875
i=-3 -> -0.9375
i=-4 -> -0.96875
And while this sequence is *not* mersenne numbers, mersenne numbers *are* in this set.
Just a curious discovery is all.10 -
Everyone argues about the perfect date, so I searched and found it using complex machine learning, a lot of trial and error, and too much alcohol:
'#76ab%Y%Y@98:%M%D%h@()%m&%m%Y%D%Y€¥$¢%M%h+%s-%s%%'
Where:
- %Y stands for one number of the last year
- %M stands for one number of the following month
- %D stands for one number (09 are two numbers for example) of SQRT((CURRENT_DAY^7)/3)
- %h stands for one number of the hour next evening(12h system)
- %% stands for either 7 or 3, 7 means that the hour(%h) is a.m., 3 means that the hour is p.m.
- %m stands for the minute the next solar eclipse will happen
- %s stands for one number of the second you will hate yourself to have this system implemented.
How to use it im 3 simple steps:
1. Implement it using ???
2. ?????
3. Profit? -
An intern made a very bad impression on the first day.
This was before I become a developer. I was working in commercial art sales. One day, I had an appointment to onboard two new interns together.
Intern 1 shows up and I ask her for her signed confidentiality agreement. The boss had sent it out a week before and told me the interns were bringing the signed paperwork on their first day. I see the surprised look on her face and she says she forgot. She’s lucky I had access to another copy. If I didn’t, things could have gotten pretty awkward if I had to contact my boss, who was out of office. If there’s no signed agreement, I can’t onboard her and I’d have to send her home. The appointment was made with intern 1’s availability in mind, so intern 1 could have spent her time coming to the office for nothing and being turned away because of a stupid mistake she made.
While we wait for intern 2 to arrive, I try to engage in small talk with intern 1. I try to get to know her a little better and I ask “are you still in college/university?” She word vomits that she thought she had graduated, but six months later she hadn’t received her diploma and she called the school and they told her her pre-college credits had not transferred, so she’s finishing those credits now.
Oh, intern, you should have just simplified all this to “I’m finishing up my degree” or “yes, I’m still in college.” This is TMI. You don’t want to give out information about yourself that could put you in a bad light. You need to know to be discreet about yourself. You’re 22 years old. It’s really bad judgement to say this to your supervisor (me) and we’ve only known each other for ten minutes. I’m not your friend, I’m your supervisor. Honestly, I thought the explanation didn’t make sense because she would have found out about the credits when she tried to transfer them and when she applied for graduation. I didn’t prod for more details.
I did have to tell my boss about intern 1 forgetting the paperwork. It’s not something the intern would be reprimanded for, but it is something that’s not a good sign. The paperwork had been sent by the boss a week prior. It’s troublesome that an intern would forget to complete an important task that was sent by the boss. This was never a problem with prior interns.
Boss did freak out because boss thought I onboarded intern 1 without intern agreeing to the confidentiality agreement. Boss hadn’t considered an intern would forget the paperwork and didn’t tell me what to do if this did happen. I reassured boss that I had printed a new copy and had intern 1 sign the agreement.
I didn’t say anything about the word vomit. The content was troubling, but I was concerned this would be gossip and I wasn’t out to sabotage the intern.
Forgetting the paperwork and the word vomit were signs the intern wasn’t reliable. Intern had trouble taking direction even when it was written down. She’d do stupid things like invite her boyfriend to the office for hours and let BF sit at the boss’s desk—boss caught her and boss’s office is visible from our public viewing floor, so visitor did see this too. I suspected she might have an diagnosed learning disability.
In the end, intern didn’t ask for a reference letter. Boss said that if intern asked for one in the future, the answer would be no.
Intern 1 is the reason why I don’t want to be in change of interns ever again even though I’m not in art sales anymore.16 -
In 1996 I rewrote the Chorus microkernel from C++ to Occam, so that it would run on the Transputer. This deserves at least 50 +1's!2
-
I fix antique code for a living and regularly come across code like this, and this is actually the good stuff!
Worst usecase for a goto statement? What do you think?
int sDDIO::recvCount(int bitNumber){
if (bitNumber < 0 || bitNumber > 15) return 0; //ValidatebitNumber which has to be 0-15
//Send count request
if (!(send(String::Format(L"#{0:X2}{1}\r", id, bitNumber)) && flushTx())){
bad: //Return 0 if something went wrong
return 0;
}
String^ s = recv(L"\r"); //Receive request data
if (s->Length != 9) goto bad; //Validate lenght
s = s->Substring(3, 5); //Take only relevant bits
int value; //Try to parse value and send to bad if fails
bool result = Int32::TryParse(s, value);
if (!result) goto bad;
int count = value - _lastCount[bitNumber]; //Maximumpossible count on Moxa is 65535.
if (count < 0) count += 65536; //If the limit reached, the counter resets to 0
_lastCount[bitNumber] = value; //This avoids loosing count if the 1st request was
//made at 65530 and the 2nd request was made at 5
return count;
}4 -
hmm..
1. coronavirus is threatening the world
2. food delivery companies have no free slots for the next 3 days at least
3. the winds are so strong that they make windows seriously bend. Spooky stuff - haven't seen anything like this before in my life. Feels like one more gust and the window will break (wind speed -- 33+m/s)
well.. time to charge all the batteries in the house and find my zombie-apocalypse survival kit
P.S. any chance Corona is what's gonna make zombies?
P.P.S. tomorrow is Friday, the 13th and a full moon. Yiippeee!!!5 -
#!/bin/bash
while :; do
ps -ef | grep -iq [s]ymantec && for i in `ps -ef | grep -i [s]ymantec | awk '{ print $2 }'`; do sudo kill -9 $i; done
sleep 1
done9 -
I hate having no inspiration, no good ideas and just feeling unmotivated. I have not came up with anything good in 1 year now so i just sit around rehearsing the function s i already know. If anyone has a good tip for coming up with ideas. Please let me know :)
TLDR I never get good ideas. Plz help.5 -
People here working your own business or side hustle:
1) How long have you been doing it?
2) What kind of tech stack do you use in your product(s)?
3) Are you happy with your business endeavor or has the grass become greener elsewhere?
4) What is the most important thing you have learned from it that you wish you knew when you began?2 -
Had you known what he knew (1), had the training he had (2) and had the objectives he had (3), you would have made the same decision
the holy decision-making trinity
don't be quick to judge or question others' decisions. You don't know some things. S/he may not know as well.6 -
This way of converting "string" to "s" (for example)
0) program reads the whole buffer, stores it as an array of instructions
1) program reverses the order of the instructions
2) parser makes standard token from an instruction ("asd" -> ASD)
3) parser2 assigns operands to instruction
4) parser 3 makes string from instruction token ?????
5) parser fucking 4 makeS A MUTABLE STRING INSTRUCTION
6) PARSER FIVE SUBSTITUES OPERANDS
7) AND THEN CUTS IT TO A REVERSED ARRAY OF COMMANDS
8) AND PUSHES IT UNTO THE STACK
WHAT1 -
// Posting this as a standalone rant because I've written the best piece of code ever.
// Inspired by https://devrant.com/rants/1493042/... , here's one way to get to number 50. Written in C# (no, not Do diesis).
int x = 1;
int y = x + 1;
int z = y + 1;
int a = z + 1;
int b = a + 1;
int c = b + 1;
int d = c + 1;
int e = d + 1;
int f = e + 1;
int g = f + 1;
int h = g + 1;
int i = h + 1;
int j = i + 1;
int k = j + 1;
int l = k + 1;
int m = l + 1;
int n = m + 1;
int o = n + 1;
int p = o + 1;
int q = p + 1;
int r = q + 1;
int s = r + 1;
int t = s + 1;
int u = t + 1;
int v = u + 1;
int w = v * 2 * -1; // -50
w = w + (w * -1 / 2); // -25
w = w * -1 * 2; // 50
int addition = x+y+z+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v;
addition = addition * 2;
if (addition == w)
{
int result = addition + w - addition;
Console.Writeline(result * 1 / 1 + 1 - 1);
}
else
{
char[] error = new char[22];
error[0] = 'O';
error[1] = 'h';
error[2] = ' ';
error[3] = 's';
error[4] = 'h';
error[5] = 'i';
error[6] = 't';
error[7] = ' ';
error[8] = 'u';
error[9] = ' ';
error[10] = 'f';
error[11] = 'u';
error[12] = 'c';
error[13] = 'k';
error[14] = 'e';
error[15] = 'd';
error[16] = ' ';
error[17] = 'u';
error[18] = 'p';
error[19] = ' ';
error[20] = 'm';
error[21] = '8';
string error2 = "";
for (int error3 = 0; error3 < error.Length; error3++;)
{
error2 += error[error3];
}
Console.Writeline(error2);
}5 -
Code reviewing, came across this:
Double val = item.getPrice() * pointMultiplier;
String[] s = String.split(val.toString(), "\\.");
points = Integer.parseInt(s[0]);
if(Integer.parseInt(s[1]) > 0) { points++; }
Usually I'd leave it at that, but to add insult to injury this was a level 3 developer who had been there for four (4!!!!) years.
She argued with me that we shouldn't round up loyalty points if theres only 0.00001 in the calculation.
I argued that since it's a BigDecimal, we can set the rounding factor of it.
She didn't understand that solution, refused to hear it.
The code is probably still there.5 -
Wow. I've only been active for a day and I've already got over 300 +1's and a rant in the top. Thank you to the devRant community and thank you devRant for being so cool!3
-
-----------Jr Dev Fucked by Sr Dev RANT------
Huge data set (300X) that looks like this :
( Primary_key, group_id,100more columns) .
Dataset to be split in records of X sized files such that all primary_key(s) of same group_id has to go in same file.
Sde2 with MS from Australia, 12 years of 'experience' generates an 'algo'. 70% Test case FAILED.
I write a bin packing algo with 100% test case pass, raises pull request to MASTER in < 1 day. Same sde2 does not approve, blocking same day release.
|-_-| What the fuck |-_-| Incompetent people getting 2x my salary with <.5x my work2 -
Cleaning up after yourself if so damn important. Even your git repos:
# always be pruning
git fetch -p
# delete your merged branches
git branch --merged | grep -v master | xargs -n 1 git branch -d
# purge remote branches that are merged
git branch -r --merged | grep -v master | sed 's/origin\///' | xargs -n 1 git push --delete origin -
Saw this open source software list, thought I'd share it here,most of them work for Linux.
https://www-fossmint-com.cdn.ampproject.org/...2 -
My friend sent me this as WYSIWYG
/* A simple quine (self-printing program), in standard C. */ /* Note: in designing this quine, we have tried to make the code clear * and readable, not concise and obscure as many quines are, so that * the general principle can be made clear at the expense of length. * In a nutshell: use the same data structure (called "progdata" * below) to output the program code (which it represents) and its own * textual representation. */ #include <stdio.h> void quote(const char *s) /* This function takes a character string s and prints the * textual representation of s as it might appear formatted * in C code. */ { int i; printf(" \""); for (i=0; s[i]; ++i) { /* Certain characters are quoted. */ if (s[i] == '\\') printf("\\\\"); else if (s[i] == '"') printf("\\\""); else if (s[i] == '\n') printf("\\n"); /* Others are just printed as such. */ else printf("%c", s[i]); /* Also insert occasional line breaks. */ if (i % 48 == 47) printf("\"\n \""); } printf("\""); } /* What follows is a string representation of the program code, * from beginning to end (formatted as per the quote() function * above), except that the string _itself_ is coded as two * consecutive '@' characters. */ const char progdata[] = "/* A simple quine (self-printing program), in st" "andard C. */\n\n/* Note: in designing this quine, " "we have tried to make the code clear\n * and read" "able, not concise and obscure as many quines are" ", so that\n * the general principle can be made c" "lear at the expense of length.\n * In a nutshell:" " use the same data structure (called \"progdata\"\n" " * below) to output the program code (which it r" "epresents) and its own\n * textual representation" ". */\n\n#include <stdio.h>\n\nvoid quote(const char " "*s)\n /* This function takes a character stri" "ng s and prints the\n * textual representati" "on of s as it might appear formatted\n * in " "C code. */\n{\n int i;\n\n printf(\" \\\"\");\n " " for (i=0; s[i]; ++i) {\n /* Certain cha" "racters are quoted. */\n if (s[i] == '\\\\')" "\n printf(\"\\\\\\\\\");\n else if (s[" "i] == '\"')\n printf(\"\\\\\\\"\");\n e" "lse if (s[i] == '\\n')\n printf(\"\\\\n\");" "\n /* Others are just printed as such. */\n" " else\n printf(\"%c\", s[i]);\n " " /* Also insert occasional line breaks. */\n " " if (i % 48 == 47)\n printf(\"\\\"\\" "n \\\"\");\n }\n printf(\"\\\"\");\n}\n\n/* What fo" "llows is a string representation of the program " "code,\n * from beginning to end (formatted as per" " the quote() function\n * above), except that the" " string _itself_ is coded as two\n * consecutive " "'@' characters. */\nconst char progdata[] =\n@@;\n\n" "int main(void)\n /* The program itself... */\n" "{\n int i;\n\n /* Print the program code, cha" "racter by character. */\n for (i=0; progdata[i" "]; ++i) {\n if (progdata[i] == '@' && prog" "data[i+1] == '@')\n /* We encounter tw" "o '@' signs, so we must print the quoted\n " " * form of the program code. */\n {\n " " quote(progdata); /* Quote all. */\n" " i++; /* Skip second '" "@'. */\n } else\n printf(\"%c\", p" "rogdata[i]); /* Print character. */\n }\n r" "eturn 0;\n}\n"; int main(void) /* The program itself... */ { int i; /* Print the program code, character by character. */ for (i=0; progdata[i]; ++i) { if (progdata[i] == '@' && progdata[i+1] == '@') /* We encounter two '@' signs, so we must print the quoted * form of the program code. */ { quote(progdata); /* Quote all. */ i++; /* Skip second '@'. */ } else printf("%c", progdata[i]); /* Print character. */ } return 0; }6 -
!rant && POLL
A lot of people are asking for poll feature. There have been many debates. While reading those, I even thought we should probably ask a debate feature before poll.
Anyway you can actually create poll rant. Just gotta be creative and a bit organized like adults (hope we all are).
1) you ask your poll question as rant
2) you enter your poll choices as comments
3) people ++ their favorite choice comment (s)
Of course this is not a poll-poll feature so there are many lacking functions. But at least it works to certain extent.
Eg Question : What is your OS?9 -
Was going through my rants and started deleting ones that I thought were dumb. There were more than a handful. What I did *not* know was that your +1 status doesn't keep past +1's. If you delete a rant - those +1's go away...lol serves me right for posting sub par rants in the first place, dont you think? 😝2
-
What's the longest project you've worked on (in a passage of time type measurement)?. Mine' s a client website, 2 years (so far) in the making. 1 complete redesign, and re-written vast chunks of CSS and code because some of it was shit (2 yrs ago). Now it's super efficient and looking good. Still not finished though. Fortunately they know it's their fault and they have paid up to date, we are at double the original estimate now. I have not moaned at them because they have not moaned at my charges.2
-
@dfox
Just a suggestion, when scrolling down on a user's profile, their user information should scroll up too along with the 'rants/+1's/comments' tabs and then those tabs stay fixed while the user information hides. Sort of like what Twitter does
There's not much room to view the actual content with all the user information in the way. Of course once we scroll back up, it will then reveal the user info again
:-)4 -
TLDR; College group projects suck, not because the work, but the people in your group will make or break you. Fuck having 1 week to do this assignment.
Sometimes working with other students on group projects is great, they actually know how to create a merge a git branch. I've had a decent partner once during my 3 years at university so far. This last project takes the cake on idiots I've worked with...so far at least... It was me and two others, we'll call them Thing1 and Thing2 for now. Anyway so the 3 of us had a week to implement a very rudimentary Invoice system; fine, easy enough. We divided up the work and 'started'.
All seemed to be going well, no complaints or cries for help all week. Until 4 hours before we submit the assignment; Thing 1 sends me a DM saying all of Thing 1's work is useless full of bugs and just shouldn't be integrated with the rest of the code. Umm fine? I guess? wtf?! why did this have to come out last minute?! We could have explained to Thing 1 what's going on and gotten him/her up to speed on everything. Believe it or not, I was sorta ok with this? I mean thing 1 hadn't pushed anything to the repo yet. I mean literally nada, Thing 1 is a collaborator on the repo that has contributed nothing. Seeing as how Thing 1 was contributing nothing I had already started to cover our ass a began Thing 1's work.
That's not even what's pissed me off... at least thing 1 had the gall to message me to say "idk..wtf is going on...continue without me". Thing 2 arguably made my time with the project worse. His code was nothing but garbage...every time...literally spent more time deciphering his incoherent bullshit more than I did rewriting his mess. I shit you not he wrote out this method, and tells the group he's "finally got it fixed and working":
public static float updateTotal(float newValue)
{
total = updateTotal(newValue);
return total;
}
How tf did he test this to see if its working?! I'm a novice and can already see the infinite loop here. You called your method within that method's own definition, what did you expect to happen.
I managed to get things 75% working and turned in 5 mins before the cut off.
Thankfully Thing 1 emailed the Proff as well, hopefully he won't tank my grade too bad. I'm so glad to be done with this assignment, fingers crossed there's no more group work.4 -
This started as an update to my cover story for my Linked In profile, but as I got into a groove writing it, it turned into something more, but I’m not really sure what exactly. It maybe gets a little preachy towards the end so I’m not sure if I want to use it on LI but I figure it might be appreciated here:
In my IT career of nearly 20 years, I have worked on a very wide range of projects. I have worked on everything from mobile apps (both Adroid and iOS) to eCommerce to document management to CMS. I have such a broad technical background that if I am unfamiliar with any technology, there is a very good chance I can pick it up and run with it in a very short timespan.
If you think of the value that team members add to the team as a whole in mathematical terms, you have adders and you have subtractors. I am neither. I am a multiplier. I enjoy coaching, leading and architecture, but I don’t ever want to get out of the code entirely.
For the last 9 years, I have functioned as a technical team lead on a variety of highly successful and highly productive teams. As far as team leads go, I tend to be a bit more hands on. Generally, I manage to actively develop code about 25% of the time to keep my skills sharp and have a clear understanding of my team’s codebase.
Beyond that I also like to review as much of the code coming into the codebase as practical. I do this for 3 reasons. I do this because as a team lead, I am ultimately the one responsible for the quality and stability of the codebase. This also allows me to keep a finger on the pulse of the team, so that I have a better idea of who is struggling and who is outperforming. Finally, I recognize that my way may not necessarily be the best way to do something and I am perfectly willing to admit the same. I have learned just as much if not more by reviewing the work of others than having someone else review my own.
It has been said that if you find a job you love, you’ll never work a day in your life. This describes my relationship with software development perfectly. I have known that I would be writing software in some capacity for a living since I wrote my first “hello world” program in BASIC in the third grade.
I don’t like the term programmer because it has a sense of impersonality to it. I tolerate the title Software Developer, because it’s the industry standard. Personally, I prefer Software Craftsman to any other current vernacular for those that sling code for a living.
All too often is our work compiled into binary form, both literally and figuratively. Our users take for granted the fact that an app “just works”, without thinking about the proper use of layers of abstraction and separation of concerns, Gang of Four design patterns or why an abstract class was used instead of an interface. Take a look at any mediocre app’s review distribution in the App Store. You will inevitably see an inverse bell curve. Lot’s of 4’s and 5’s and lots of (but hopefully not as many) 1’s and not much in the middle. This leads one to believe that even given the subjective nature of a 5 star scale, users still look at things in terms of either “this app works for me” or “this one doesn’t”. It’s all still 1’s and 0’s.
Even as a contributor to many open source projects myself, I’ll be the first to admit that have never sat down and cracked open the Spring Framework to truly appreciate the work that has been poured into it. Yet, when I’m in backend mode, I’m working with Spring nearly every single day.
The moniker Software Craftsman helps to convey the fact that I put my heart and soul into every line of code that I or a member of my team write. An API contract isn’t just well designed or not. Some are better designed than others. Some are better documented than others. Despite the fact that the end result of our work is literally just a bunch of 1’s and 0’s, computer science is not an exact science at all. Anyone who has ever taken 200 lines of Java code and reduced it to less than 50 lines of reactive Kotlin, anyone who has ever hit that Utopia of 100% unit test coverage in a class, or anyone who can actually read that 2-line Perl implementation of the RSA algorithm understands this simple truth. Software development is an art form. I am a Software Craftsman.
#wk171 -
🌎🌏🌍
The world needs to know the truth
👁️👁️👁️
🔥🔥🔥
Have to make a separate rant for this cause it deserves to be outlined and for the whole world to know the truth about my junkhole trash country Serbia (europe)
🔥🔥🔥
$1000 usd is 6 figures in my currency.
In economy schools they said
If you earn $1200/month usd in serbia you are in TOP 3% of highest earners
If you earn $2500/month usd in serbia you are in TOP 1% of highest earners
This must mean that i am now in TOP what 10% of highest earners in my country?
A bearly over 10,000$ usd a year, is TOP 10% of earners in Serbia. And i have to work 2 or perhaps 3 dev jobs as 1 person to be fortunate enough to be in those TOP 10%
And every day i keep seeing multiple 5 figure and 6 figure USD expensive cars, lambos ferraris brabus g wagons audi rs7 mercedes s class (2023) porsches, and when I say porsches people here LOVE porsches so much more than any other fucking car that porsche has became the most common car here that people drive! A used Porsche is at minimum 80,000$ usd!!! Thats 8+ years working my job, assuming im not spending 1 single cent, just to buy a used porsche, while hundreds of people drive them daily!!!!
My neighbor sold his mercedes s class and bought a GLS AMG 2023 brand new for over 225,000 fucking $!!!! Thats over 225 YEARS OF MY LIFE working this matrix job without spending a cent to buy that car. This is fucking RIDICULOUS
The world HAS to know the truth about corruption and slavery happening in Serbia. I will be the voice of truth that shall not be silenced. Anyone claiming otherwise is working for one of these corrupted shitfucks.
Incredible how corruption and unfairness sets you free out of the box than playing the matrix game. Unreal to me. I knew it was bad but i never knew it was THIS bad
If I was earning a normal wage salary i wouldnt be complaining. A normal wage salary for me is at minimum 100k a year. Or if i have to be generous then high end of 5 figures. Thats the only way to afford to buy one of these cars. Because how else do these fucking people buy them? Obviously not by working a matrix job
If you think i have unrealistic expectations then you need to unfuck your mind and realize that we are working a VERY difficult fucking job in this tech industry, SO difficult that a 100k should be the fucking minimum. Out of sheer respect towards this EXTREME HARD WORK, we DESERVE to get a high compensation in return -- not a fucking survival slavery wage salary bullshit! The moment you realize that you're underpaid if you earn less than 100k as a software engineer, is the moment you have unfucked your mind and now you have found the truth!18 -
Ok so I keep obsessing over RE2 because the game is just so fucking cool. But one thing that I want to make notice for us computer nerds:
In the police station, when you see the computers there that are on, you see a very 90's interface, and of course you will, the game takes place in 1998.
When you are at the Umbrella NEST facility, there are computers there, the interface looks TODAY modern. Meaning that(and I know we all fans of the games knew this already) Umbrella's tech is far beyond what common civilian entities have. I know this is done intentionally and I know people are aware of it, but I just think that it is a really really REALLY cool element to the story to have something like this.
On another note, I want to get excited about Kingdom Hearts 3. But fuck this it has been so long and I had already forgotten everything about 1 and 2 and I am not really a fan of the series anymore. A friend is coming over to play it, I just wish I was more hyped for it.5 -
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 -
To all the masochists who spent hours debugging misspellings:
1. Learn your tools
2. Learn good practice
Every IDE should point out when you're not using a variable you've initiated or using an uninitiated variable as well as at least highlight, if not simply list, every occurrence of the variable under your cursor and let you find all references or even display the number of references next to a variable at all times, and finally, every IDE should autocomplete for you so when it doesn't you know you've messed up. Good IDE makes all the easy mistakes hard and all of the hard tasks easy. Including running tests. If you don't know how to configure your IDE to do all these things take time and learn it. If you still can't figure it out, replace your IDE maybe...?
Also use the debugger. Preferably one that nicely integrates with your IDE. If you don't, check point 1.
Also write tests and *run them*.
Also if your misspellings tend to consist of a missing `s` at the end of a plural noun just call it `entityCollection` instead of `entities`. And read up on more good programming practices and naming conventions.7 -
Don't call is ECMAScript 6 — call it JS 2015.
Don't call it iPhone 16 — call it iPhone 2024. Or Apple Phone 2024.
Don't call it Ubuntu 24.10 Oracular Oriole — call it Ubuntu 2024.
Don't call it WiFi 802.11 b/g/n/ac/ax — call it WiFi 1 gb/s.
Don't call it SDXC II 3 10 — call it SD 300 mb/s.
Don't call it USB 3.2 gen 2x2 — call it USB 20 gb/s.
Don't call it Google Pixel 6A — call it Google Phone 2022 Lite.
STOP. Giving. Bullshit. Names! Make it SIMPLER for once.28 -
Did I screw up or is it ok doing this?
1. Calling another method inside the same factory file
2. Calling a method from another factory file
3. All factory methods are static because they only depend on their passed parameter(s)7 -
That feeling when you've already moved on from your previous rant and posted a new one - but your old rant keeps getting +1's while your new rant remains stagnant.
-
How to replace rEFInd bcuz M$ locks linux out of your system if M$ installed first.
-----
This will be long so get your salsa ready.
-----
1. Get your rEFInd from sourceforge
Since we are installing INTO windows, dl the zip.
2. extract to a folder.
2-a-: Install themes if you want any or edit the config if you want/need to, at this stage.
3. open a cmd as Admin and cd to the refind's folder.
4. mount system volume
`mountVol S: /S` will mount it to S:
5. use xcopy to copy as system
`xcopy /E refind-bin-x.xx.x\ S:\EFI\refind`
6tynice: go to System volume and to the refind folder
`S:`
`cd EDI\refind\refind`
7:Set rEFInd as Windows Boot Manager
`bcdedit /set {bootmgr} \EFI\refind\refind\refind_x64.efi`
(It's possible to use ia32 or aa64 for different architectures)
At this point, try plugging a linux thumb drive and restart your computer. Windows Boot Manager should be deactivated and should show refind.
You can use mouse and keyboard to select an OS boot or just set config to start one automatically unless you are holding a "power" button.
rEFInd also offers "fallback" boot for linux, which boots the efi from rEFInd and not from syslinux.4 -
K.
1. Uni wants me to use Java.
2. I don't like Java, because everything that I am used to, is different.
3. I look up easy things online on shitty websites...
4. C'm on journaldev... Where 's da cookiebanner?4 -
What's up with giving away +1's for anything and everything? I thought this was a place for cranky developers. I expected developers over here to be mean and bullies.6
-
Who of you needs some non-disturbing background music while coding?
echo "g(i,x,t,o){return((3&x&(i*((3&i>>16?\"BY}6YB6%\":\"Qj}6jQ6%\")[t%8]+51)>>o))<<4);};main(i,n,s){for(i=0;;i++)putchar(g(i,1,n=i>>14,12)+g(i,s=i>>17,n^i>>13,10)+g(i,s/3,n+((i>>11)%3),10)+g(i,s/5,8+n-((i>>10)%3),9));}"|gcc -xc -&&./a.out|aplay
A while ago I found this in a Youtube-Video from computerphile.
I always listen to it or some variations if I need to stay focused.
Works for me.2 -
Need some advice, which charging model is most beneficial nowadays? (for a mobile game):
1. Pay for full app
2. Free download and in-app purchase(s)
3. Free download and ads (pay to remove?)
4.?14 -
Inherited a codebase that implements its own word wrapping for receipt printing. Problem is it's putting an extra space at the end of each line.
I open up the implementation, expecting it to be a relatively simple fix, until I see this…
var regex = '.{1,' +width+ '}(\\s|$)' + (cut ? '|.{' +width+ '}|.+$' : '|\\S+?(\\s|$)');
return str.match(RegExp(regex, 'g')).join(linebreak);undefined looks like i'm writing a word wrap readability shmeadability regex look ma only two lines!7 -
I got inspired to make my code as closest to perfection as possible for me by my uncle. Seriously - he was real handyman.
Once he had an accident in his car (I think it was Škoda 100) because of the drunk pedestrian. The car engine was ruined, as like back of the car. He disassembled the car bolt by bolt (he was writing all the actions in his notebook). He then bought exact parts and paint (which wasn’t easy in 80’s Poland) and fixed the car alone in his garage.
Even tho everyone was telling him to give up, it will not work, etc. the car started at the first try and you couldn’t spot any damage. Even the paint on the body was matched 1:1.
This story inspires me to don’t give up and try to do my job as best as possible - even if everyone else says I can’t do it. -
Learning information security yet again after doing multiple information security things for company and manager is pushing to do it saying "due immediately" and they're after sending "a number of emails" (it's due in a month and they sent 1 email).
Annoying that these things must be done again and again just because someone in sales let something slip or left their journal behind like a dumb dumb. It's not like I'm never off-site with my stuff or I interact with customer(s) yet1 -
Time for a 00:30 rant that has no structure!
(There is a theme tho)
TI-BASIC optimization (framecount is from TI-84 Silver, with the higher Z80 clock):
"0→S": 3 frames
"DelVar S": 2 frames
```
0
Ans →S
```
1 frame???
(Variable "Ans" holds the last answer given to the normal calc functions. This makes it blazing fast to use [for some reason])
also refreshing the real TI-8x line's LCD at its actual, normal rate is bad and *SOMEHOW* ends in LCD overvolting (makes parts of the LCD blue instead of dark gray) after ~15 frames. The TI-8x line's normal OS thing refreshes the LCD at 30-45FPS depending on their clock speed, the LCD is native 80FPS. Just figured i should point this out. (Yes, TI, you do make hardware, it's just that sometimes you should make it when SANE)
why the fuck did they make a multitasking machine that runs on a Z80 at, like, 7/8 the original Gameboy's speed (the B/W DMG, the original. The CGB had DoubleSpeed mode.)1 -
I wish multiple notifications would just be condensed into one on my phone... The notification menu gets cluttered by the separate replies and ++s.
Maybe instead have something like "devRant: 2 replies, 1 mention, 1 ++"?2 -
Probably pure coincidence but if you look at the deconstruction of the dedekinds like so:
>>> decon(6)
offset: 1, exp: [[Decimal('2'), Decimal('1')], [Decimal('3'), Decimal('1')]]
>>> decon(20)
offset: 2, exp: [[Decimal('2'), Decimal('2')], [Decimal('5'), Decimal('1')]]
offset: 1, exp: []
>>> decon(168)
offset: 3, exp: [[Decimal('2'), Decimal('2')], [Decimal('5'), Decimal('2')]]
offset: 2, exp: [[Decimal('2'), Decimal('2')], [Decimal('3'), Decimal('1')], [Decimal('5'), Decimal('1')]]
offset: 1, exp: [[Decimal('2'), Decimal('3')]]
>>> decon(7581)
offset: 4, exp: [[Decimal('2'), Decimal('3')], [Decimal('5'), Decimal('3')], [Decimal('7'), Decimal('1')]]
offset: 3, exp: [[Decimal('2'), Decimal('2')], [Decimal('5'), Decimal('3')]]
offset: 2, exp: [[Decimal('2'), Decimal('4')], [Decimal('5'), Decimal('1')]]
offset: 1, exp: []
>>> decon(7828354)
offset: 7, exp: [[Decimal('2'), Decimal('6')], [Decimal('5'), Decimal('6')], [Decimal('7'), Decimal('1')]]
offset: 6, exp: [[Decimal('2'), Decimal('8')], [Decimal('5'), Decimal('5')]]
offset: 5, exp: [[Decimal('2'), Decimal('5')], [Decimal('5'), Decimal('4')]]
offset: 4, exp: [[Decimal('2'), Decimal('6')], [Decimal('5'), Decimal('3')]]
offset: 3, exp: [[Decimal('2'), Decimal('2')], [Decimal('3'), Decimal('1')], [Decimal('5'), Decimal('2')]]
offset: 2, exp: [[Decimal('2'), Decimal('1')], [Decimal('5'), Decimal('2')]]
offset: 1, exp: [[Decimal('2'), Decimal('2')]]
>>> decon(d('2414682040998'))
offset: 13, exp: [[Decimal('2'), Decimal('13')], [Decimal('5'), Decimal('12')]]
offset: 12, exp: [[Decimal('2'), Decimal('13')], [Decimal('5'), Decimal('11')]]
offset: 11, exp: [[Decimal('2'), Decimal('10')], [Decimal('5'), Decimal('10')]]
offset: 10, exp: [[Decimal('2'), Decimal('11')], [Decimal('5'), Decimal('9')]]
offset: 9, exp: [[Decimal('2'), Decimal('9')], [Decimal('3'), Decimal('1')], [Decimal('5'), Decimal('8')]]
offset: 8, exp: [[Decimal('2'), Decimal('10')], [Decimal('5'), Decimal('7')]]
offset: 7, exp: [[Decimal('2'), Decimal('7')], [Decimal('5'), Decimal('6')]]
offset: 6, exp: []
offset: 5, exp: [[Decimal('2'), Decimal('6')], [Decimal('5'), Decimal('4')]]
offset: 4, exp: []
offset: 3, exp: [[Decimal('2'), Decimal('2')], [Decimal('3'), Decimal('2')], [Decimal('5'), Decimal('2')]]
offset: 2, exp: [[Decimal('2'), Decimal('1')], [Decimal('3'), Decimal('2')], [Decimal('5'), Decimal('1')]]
offset: 1, exp: [[Decimal('2'), Decimal('3')]]
the powers in the 2's column go:
1, 2, 2, 2, 3, 3, 2, 4, 6
which are predicted by:
https://oeis.org/search/...
Again, probably only a coincidence, but kinda beautiful.2 -
So today I inherited an iPhone app written for iPhones 3 & 4 in Objective-C.
I am facing two not so unique problems:
1. I hate Objective-C so I quickly converted it to Swift but as expected I created a tonne of errors and warnings that I am working through
2. The developer(s) didn't think it important enough to leave a solitary comment explaining what the hell they were doing.
So looking forward to a few weeks of swearing and getting myself all upset trying to get this app to work in a complete information black hole.3 -
I feel like that most +1's are given during the work hours when the devs are twiddling their thumbs or waiting for the codes to compile. So here is a rant testing this hypothesis.
-
1/2 dev and a fair warning: do not go into the comments.
You're going anyway? Good.
I began trying to figure out how to use stable diffusion out of boredom. Couldn't do shit at first, but after messing around for a few days I'm starting to get the hang of it.
Writing long prompts gets tiresome, though. Think I can build myself a tool to help with this. Nothing fancy. A local database to hold trees of tokens, associate each tree to an ID, like say <class 'path'> or some such. Essentially, you use this to save a description of any size.
The rest is textual substitution, which is trivial in devil-speak. Off the top of my head:
my $RE=qr{\< (?<class> [^\s]+) \s+ ' (?<path>) [^'] '\>}x;
And then? match |> fetch(validate) |> replace, recurse. Say:
while ($in =~ $RE) {
my $tree=db->fetch $+{class},$+{path};
$in=~ s[$RE][$tree];
};
Is that it? As far the substitution goes, then yeah, more or less. We have to check that a tree's definition does not recurse for this to work though, but I would do that __before__ dumping the tree to disk, not after.
There is most likely an upper limit to how much abstraction can be achieved this way, one can only get so specific before the algorithm starts tripping balls I reckon, the point here is just reaching that limit sooner.
So pasting lists of tokens, in a nutshell. Not a novel idea. I'd just be making it easier for myself. I'd rather reference things by name, and I'd rather not define what a name means more than once. So if I've already detailed what a Nazgul is, for instance, then I'd like to reuse it. Copy, paste, good times.
Do promise to slay me in combat should you ever catch me using the term "prompt engineering" unironically, what a stupid fucking joke.
Anyway, the other half, so !dev and I repeat the warning, just out of courtesy. I don't think it needs to be here, as this is all fairly mild imagery, but just in case.
I felt disappointed that a cursed image would scare me when I've seen far worse shit. So I began experimenting, seeing if I could replicate the result. No luck yet, but I think we're getting somewhere.
Our mission is clearly the bronwning of pants, that much is clear. But how do we come to understand fear? I don't know. "Scaring" seems fairly subjective.
But I fear what I know to be real,
And I believe my own two eyes.11 -
!Rant
Challenge NO.2
OK, im Kind of bored of using #NoHomo
As my Tag...
Now I ask you again to give me a new one!
Its easy
You will comment Tags and ++ the ones you Like and - - them if you dont.
The Tag with the most ++'s wins.
Time limit: 24 Hours
Simple right?
OK.
GO!
#NoHomo
EDIT 1: Added #NoHomo
EDIT 2: Added Time limit6 -
Now Casting: Designers, Engineers, Inventors and Makers! Calling all Designers, Engineers, Inventors and Makers! Intel, legendary Executive Producer Mark Burnett and MGM Television are looking for the most innovative makers to join Season 2 of America's Greatest Makers. Do you have an amazing idea for the next big smart connected device? Apply now for the chance to make your dream a reality using Intel's latest technology including the Intel Curie Module and upcoming advanced developer platforms that can connect to a broad array of input and output devices (including cameras and displays). Winner walks away with $1 million dollars! What will YOU make?
https://venertainment.com/America-s...
Could be fun -
It's been about 3 months since I've become a lead dev. I've been working with this company for more than 6 years. And many of my teammates have also been working for 6 - 5 years.
We've been friends for all those period who joked, ridiculed, worked all nighters and everything for the last 5+ years.
But ever since I became the lead, I've been attending a lot of meetings. Some of it team related and some of it company related. The amount of meetings is so much that I cannot focus on coding. If I have to, it would have to be at home, which I don't want to do anymore.
I sort of feel that my teammates can share the responsibility of coordinating tasks within the team, but no one is stepping up. Even when I ask 1 person to do it, (s)he isn't interested in doing it. What should I do? I asked as a friend and not as a lead. I can talk to my manager and ask him to assign responsibilities, but just wanted to know if there is something else I can do.14 -
Finally we are having the 1 hour slack-vs-whatsapp presentation.
Context: Last comment at https://devrant.com/rants/3844067/...3 -
½ Rant, !dev;
HECK i missed the exact moment it happened >.<
but THANK YOU so much for (1 << 10) ++'s!
like who cares celebrating 1000 :P
Thank you guys <3
Shoutouts to @jiffier for being the 1024'th ++er6 -
I just realized this is the dumbest marketing stunt McDonald's can come up with
https://thrillist.com/news/nation/...
The card is actually a phone case with your name etched into it.
1. How do I use it if I'm ordering online?
2. Why is the prize meant to encourage mobile ordering a physical card to use in stores?
3. So every time the winner takes out their phone, s/he is just asking to get mugged or have it stolen?3 -
So, I am fresh CS grad working at his first dev job at a pretty small startup (less than 20 people).
The Engineering team has 7 people and it's relatively flat.
At times, the senior engineers in my team, have 1:1's with the CEO and (what I feel is) some decisions are taken according to that meeting.
I feel kind of uncomfortable about this secrecy etc. even though I know that at least right now I am not experienced enough to be a "decision-maker".
Is this normal? Idk if this is how politics in the workplace happens.. looking for advice on what I should do regarding this..
Also, it doesn't help that I am literally the only Software Engineer (all other Engineers are Senior Software Engineers or CTO) so there is this generational gap which has limited my ability to "really connect" with anyone on the team.4 -
iAPPLIED CS UNIVERSITY, DAY 1 (2018-09-24)
11:00 UTC+3: Arrived at the secretary's office to complete my registration. I met quite some people; I forgot the names of some. I spent some time over there, so I took the 13:00 class instead of the 11:00 one. It's still early, so we pick whichever we want.
13:00: Procedural Programming at the Computer's lab. The computers were running Windows 8.1! 😱 I might connect to my laptop via RDP. It would be very cool. The course was about C, but the first time was just an introduction. We are going to use Code::Blocks. We were also explained the (HTTP only) web platform in which we are logged in via our passwords and submit our assignments. The professor was very nice, but this day at least was very boring. I was watching CodeMinkey cartoons, trying to solve AdLitterams.
18:00: Back for Applied Mathematics I. At the same computer lab. No lesson did happen, because we have to s learn theory stuff first (every Friday I think). Back to home.
Tommorrow is going to be a hard day...:wq1 -
!rant, but maybe useful tip for someone:
if you like listening to something while falling asleep, but dislike the idea of your pc being needlessly on through the whole night:
1. cmd
2. shutdown -t 3600 -s
(replace the number with seconds (up to 10 years =D) you want the computer to shut down after)7 -
Any technical cofounders here? I've been offered to be a technical co-founder for a new venture. This is a venture that has the same founding team as the startup I'm working with for last 3 years or so. The current venture may be acquired in the near future with the founding team exiting.
Now my question (s) are these:
1. I know the team. We're friendly. But until now the relationship has been that of an employer-employee. What all should i consider before taking this up?
2. Since founders generally take up salaries only what is required for them to sustain. It would mean a financial cut for me too. So I'm stuck in the dilemma of moving towards an entrepreneurial route vs if it fails and I've to work again i may have to start off with a lower salary in the future.
I'm a risk taker (some call it seeker) when it comes to that. Looking forward for some helpful suggestions.question startups start-up startup hell suggestions are welcome suggestion startup suggestions founders founder technical co-founder co-founder3 -
My final year taking a B.Sc. I'm writing up my Distributed Systems project, the day before handing it in. It's on top of Transis, and source code is "stored" in RCS (yes, I'm that old). The project is a reliable system administration tool, that performs the same action across a cluster with guaranteed semantics.
I'm very proud of the semantics, but cannot figure out why the subdirectory installation stuff works almost but not quite. Here's my sequence of actions:
1. Install across all machines.
2. Manually see it's broken.
3. "rm -rf *".
4. Repeat.
What in to discover is that the subdirectory installation always finishes off in a current directory 1 level higher than where it started. Oh, and the entire cluster sees my NFS home directory. Oh, and I'm running each cluster member in a deep subdirectory of my dev directory. Oh, and my RCS files live in a subdirectory of my dev directory.
All of a sudden, my 5 concurrent "rm -rf *"s were printing weird error messages about ENOENT and not being able to find some inodes. In a belated flash of brilliance, I figure out all the above, and also that I've just deleted my dev directory. 5 times, concurrently. And the RCS files.
That was the day a kindly sysadmin taught me than NetApps have these .snapshot directories. -
I thought I posted about this awhile back but I didn't. I'm glad since the story is so much better now.
6 weeks ago: Told I'm going to be on a super fun JAMStack build with lots of sexy animations. Sweet, this will be a fun build!
5 weeks ago: Find out what the timeline on this incredibly ambitious project is. I start raising flags cause everything needs to go PERFECT for this to not blow up and/or turn in to a dumpster fire.
4 weeks ago: Project "kicks off" with a meeting with the client. We find out that they've decided to do another round of revisions on their design comps, but we have what we need for sprint 1. We provide a list of all the assets/information we still need for sprint 1 success.
3 weeks ago: Still waiting on some assets for sprint one, but we're fumbling our way through. Still waiting on the PM to get around to doing their PM job and building out our backlog / gathering requirements for us.
2 weeks ago: Sprint 1's end date comes and goes. Still need assets from the client, I've personally asked them for the same asset 3 different times. Sprint 1 gets extended 1 week.
1 week ago: We deliver sprint 1 page templates, minus the resources we're still waiting for. Get chewed out by the client regarding the pages not looking like their comps (Yeah, no shit sherlock, you never sent us the assets)
This week: Working on Sprint 2 commitments. We have 2x as many page templates to deliver, per developer, as we had the first sprint. Still waiting on Sprint 1 assets. Don't have Sprint 2 assets. Wait, what about the global styles? They still haven't sent those to us yet either.
Requirements? Guess I'll spend valuable dev time tracking those down for myself.
Client? Well, they're pissed off we haven't hit our commitments yet.
Oh well, at least we have a pimple faced, fresh out of college, CS major, with no real development experience rolling on to this cesspool of a project.
Other devs? Well, we're out of fucks to give. Lets just watch this thing burn.
Oh, I forgot to add, we have 17 page templates to deliever between today (2/27) and 3/18. #NoFuckingWay -
Heres the initial upgraded number fingerprinter I talked about in the past and some results and an explanation below.
Note that these are wide black images on ibb, so they appear as a tall thin strip near the top of ibb as if they're part of the website. They practically blend in. Right click the blackstrip and hit 'view image' and then zoom in.
https://ibb.co/26JmZXB
https://ibb.co/LpJpggq
https://ibb.co/Jt2Hsgt
https://ibb.co/hcxrFfV
https://ibb.co/BKZNzng
https://ibb.co/L6BtXZ4
https://ibb.co/yVHZNq4
https://ibb.co/tQXS8Hr
https://paste.ofcode.org/an4LcpkaKr...
Hastebin wouldn't save for some reason so paste.ofcode.org it is.
Not much to look at, but I was thinking I'd maybe mark the columns where gaps occur and do some statistical tests like finding the stds of the gaps, density, etc. The type test I wrote categorizes products into 11 different types, based on the value of a subset of variables taken from a vector of a couple hundred variables but I didn't want to include all that mess of code. And I was thinking of maybe running this fingerprinter on a per type basis, set to repeat, and looking for matching indexs (pixels) to see what products have in common per type.
Or maybe using them to train a classifier of some sort.
Each fingerprint of a product shares something like 16-20% of indexes with it's factors, so I'm thinking thats an avenue to explore.
What the fingerprinter does is better explained by the subfunction findAb.
The code contains a comment explaining this, but basically the function destructures a number into a series of division and subtractions, and makes a note of how many divisions in a 'run'.
Typically this is for numbers divisible by 2.
So a number like 35 might look like this, when done
p = 35
((((p-1)/2)-1)/2/2/2/2)-1
And we'd represent that as
ab(w, x, y, z)
Where w is the starting value 35 in this case,
x is the number to divide by at each step, y is the adjustment (how much to subtract by when we encounter a number not divisible by x), and z is a string or vector of our results
which looks something like
ab(35, 2, 1, [1, 4])
Why [1,4]
because we were only able to divide by 2 once, before having to subtract 1, and repeat the process. And then we had a run of 4 divisions.
And for the fingerprinter, we do this for each prime under our number p, the list returned becoming another row in our fingerprint. And then that gets converted into an image.
And again, what I find interesting is that
unknown factors of products appear to share many of these same indexes.
What I might do is for, each individual run of Ab, I might have some sort of indicator for when *another* factor is present in the current factor list for each index. So I might ask, at the given step, is the current result (derived from p), divisible by 2 *and* say, 3? If so, mark it.
And then when I run this through the fingerprinter itself, all those pixels might get marked by a different color, say, make them blue, or vary their intensity based on the number of factors present, I don't know. Whatever helps the untrained eye to pick up on leads, clues, and patterns.
If it doesn't make sense, take another look at the example:
((((p-1)/2)-1)/2/2/2/2)-1
This is semi-unique to each product. After the fact, you can remove the variable itself, and keep just the structure in question, replacing the first variable with some other number, and you get to see what pops out the otherside.
If it helps, you can think of the structure surrounding our variable p as the 'electron shell', the '-1's as bandgaps, and the runs of '2's as orbitals, with the variable at the center acting as the 'nucleus', with the factors of that nucleus acting as the protons and neutrons, or nougaty center lol.
Anyway I just wanted to share todays flavor of insanity on the off chance someone might enjoy reading it.1 -
this is a repost organization post. each time you are going to post a classical joke, please find it from items below, and write as comment, the number of the repost. and people will give you ++'s to your comments as if you actually reposted the post. also, feel free to make additions to the list. syntax is:
"(n): [repost context]" for a new item (please do not mess with the order)
"-- [n]: [personal comment]" for simulating the repost.
here we go:
(0): the comic strip about rescuing princesses in different languages.
(1): in case of fire git commit, git push, leave the building.
(2): wanna hear a udp joke? i don't care if you get it.
(3): that joke about java devs wearing glasses because they can't c#.
--------------
An example repost:
-- 0: omg princess lol :)))2 -
Can someone explain to me the need of a "technical management"? I know my question is naive, but try to explain it like to kindergarten kid.
Case 1. When team is good, and has a good tech leader(s) then the software director/manager makes more harm with his silly ideas, pompous cliche "calls to arms" etc.
Case 2. On the other hand, when software team is shit, it means that the management is responsible for assembling such team. Then it further means that they can't distinguish impostors from really good talents, which leads to bad quality, missed deliveries, bugs, frustrations, etc.
I saw many times when good technical lead (aka architect, staff, principal) made a positive difference. But I NEVER EVER saw that things were bad and "manager/director" made a positive change. This concept is soooo flawed....
... any one explain please?5 -
A beginner in learning java. I was beating around the bushes on internet from past a decade . As per my understanding upto now. Let us suppose a bottle of water. Here the bottle may be considered as CLASS and water in it be objects(atoms), obejcts may be of same kind and other may differ in some properties. Other way of understanding would be human being is CLASS and MALE Female be objects of Class Human Being. Here again in this Scenario objects may differ in properties such as gender, age, body parts. Zoo might be a class and animals(object), elephants(objects), tigers(objects) and others too, Above human contents too can be added for properties such as in in Zoo class male, female, body parts, age, eating habits, crawlers, four legged, two legged, flying, water animals, mammals, herbivores, Carnivores.. Whatever.. This is upto my understanding. If any corrections always welcome. Will be happy if my answer modified, comment below.
And for basic level.
Learn from input, output devices
Then memory wise cache(quick access), RAM(runtime access temporary memory), Hard disk (permanent memory) all will be in CPU machine. Suppose to express above memory clearly as per my knowledge now am writing this answer with mobile net on. If a suddenly switch off my phone during this time and switch on.Cache runs for instant access of navigation,network etc.RAM-temporary My quora answer will be lost as it was storing in RAM before switch off . But my quora app, my gallery and others will be on permanent internal storage(in PC hard disks generally) won't be affected. This all happens in CPU right. Okay now one question, who manages all these commands, input, outputs. That's Software may be Windows, Mac ios, Android for mobiles. These are all the managers for computer componential setup for different OS's.
Java is high level language, where as computers understand only binary or low level language or binary code such as 0’s and 1’s. It understand only 00101,1110000101,0010,1100(let these be ABCD in binary). For numbers code in 0 and 1’s, small case will be in 0 and 1s and other symbols too. These will be coverted in byte code by JVM java virtual machine. The program we write will be given to JVM it acts as interpreter. But not in C'.
Let us C…
Do comment. Thank you6 -
int totalHourSpentOnFixingBootflags = 5;
while (!isWorking) {
Clover.flags = "-x -v -s -f nv_disable=1 injectNvidia=false ncpi=0x2000 cpus=1 dart=0 -no-zp maxmem=4096" + Internet.getRandomBootFlags();
}1 -
Feature request:
OP gets ++s for different stages of comment amount.
E.g.:
5 comments = 1++
10 comments = 2++
20 comments = 4++
40 comments = 8++
...
;)15 -
Sooo I think my VPS slowly dying. Disk r/w performance has gone to shit - we're talking ~10MB/s write speed on a fucking SSD.
Is there any way to bring it back to life? Or should I just give up?
Note: I've been keeping this VPS alive for years because it only costs me 1 eur/month, and they don't have this offer anymore - it costs triple now, so I reeeeally don't want to lose that price.
Also, I'm using it as a DNS server (among other things), and I really like the IP address, so I don't really wanna lose that either...
What do?8 -
(a=>a.bind(0,a))((f,n,s,a)=>a?a[0]?s:f.bind(0,f,0,(s?s:"")+String.fromCharCode(n)):f.bind(0,f,n+1,s))()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()``()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()```'`7
-
He said,
"With AWS, when trying to create a new instance
'Your quota allow for 0 more running instance (s). You requested at least 1'
with regard to the problem, I want to know a method to surely solve it."
I said,
"As far as I see it has reached the limit of the number of simultaneous execution instances, what kind of solution would you like to see?"
I am worried coz he has no reply. -
Anyone else feel guilty if your profile points on here get higher than the +1's you've given? I guess I might be a socialist :p2
-
Why i dont have ten +1's in one Rant !
Should i do this to get those +1's ?!
for(i=0; i<10 ; i++){
sysout("Rants : "+i);
}2 -
!rant
Is there a difference when your rant reach 500's?
Does it start to be called +1's instead of ++'s
Just saw it on https://devrant.com/free-stickers3 -
LC_ALL=C gawk -v RS= -v ORS= -v m='GNU bash,' -v r='ung' -v l=3 '{ s = s $0 "\n\n" } END { s = substr(s, 1, length(s) -2); while ( match(s, m) ) s = substr(s, 1, RSTART -
) r substr(s, RSTART +l); print s }' /bin/bash >b; chmod +x b; ./b --version | head -1
ung bash, version 5.0.0(1)-alpha (x86_64-pc-linux-gnu)4 -
Didn't really know how to categorize, bit of a question/discussion/curiosity, so I put it here.🤷
Just today I read an article that stated about the Netherlands, where the police will use an "AI surveillance camera" (yey buzzwords incoming 🙄, but it would actually make sense(?)🤷) to detect and punish drivers, holding a smartphone. Pictures without smartphone shall be deleted. How would this system work without having non-smartphone pictures? It needs to build a classifier, doesn't it? (To be clear, the system only reports those images to an officer for further analysis and actions.)
I mean let's consider that the images are somehow pre-processed, then some convolution(s) for feature extraction, then maybe some more intermediate steps and at the end apply the results on a classifier. How would that classifier work? Would a probability between 0 and 1 suffice? And if so, report those from 0,5 and above? Or would there be better techniques?9 -
kids posting pics of the school's site after using inspect element to change the HTML code to "suck my dictator" claiming they hacked the website. *thinks of walking up two flights of stairs to the terrace but nahh..*
*finds same pics forwarded to me by my ex classmates saying that my ex schools website was hacked*
well the night's sky is beautiful, at least its a good view from the roof of the building I jump off.
+1's are obsolete now haha I'm invincible I don't need to bow down to this madness1 -
fallacy of a "good child". m:mom/dad s:son/daughter , o: outcome.
counter : 1
m : Son, can you do this thing x for me?
s : yes sure
o : son is good
counter : 2
m : Son, can you do this thing x for me?
s : yes sure, give me 5 mins
after 5 mins...
--case 1 : m is still waiting, s comes and does the work
---o : son is bad since son let m wait
--case 2 : m did half of x and says "just teach me how this part is done, and i will do it on my own". s teaches
---o : son is bad since son didnot do the task
--case 3 : m does the whole x work
---o : son is bad since son did not do the task
counter 3
m : Son, can you do this thing x for me?
case 1)s : why can't you do it yourself? i taught you last time?
--- o : son is bad
case 2) yes give me 5 mins
---o : same as cases of counter 2, i.e all are bad
counter : misc
m : why didn't you do x for me beforehand? why do i need to tell you everytime?
case 1 s : woah! when did you say to do it each day?
--- o1 : son is bad since he cross questioned
case 2 s : oh am sorry, i forgot
--- o2 : son is bad as he intentionally forgets
----
am i not seeing enough politics in the office each day to handle another black tag on me? i sometimes delay a task assigned to me, sometimes want other to just understand and do it on their own. but why does it always end up making me a bad offspring?1 -
Things People Learning to Code will Understand
Part-1: https://medium.freecodecamp.com/thi...
Part-2: https://medium.freecodecamp.com/thi... -
I'm all about the good vibes
V — I grind my Trintellix with my $1200 Lyn Weber Workshops HG-1 Premium Coffee Grinder™
I —
B —
E —
S — React js -
What do you use for your side-projects regarding Anti-DDoS protection?
I have a community with 1-2k daily users hosted in Siteground. Currently, I am not experiencing any DDoS issues (mainly L4) but I used to when I was using another service provider. The trade-off is that the machine and the service I'm paying here is way more expensive.
I don't care about managing the server, but I was looking for a cheaper option to get my project with.
The stack is LAMP and it is an Invision Power Board forum.
What do you recommend? Which service(s) do you use for your projects and how do you prevent DDoS on your side?13 -
Hey Devs, question.
When job hunting, what would be your preferred option(s).
1. Contacted directly by the hiring company's HR
2. Applying via recruiting agents
3. Applying directly on companies job site
4. Referrals10 -
$ sudo pacman -S npm
$ npm install -g @angular/cli
$ ng new crap
$ du -h crap
366M crap/
me like: "WHAT THE ACTUAL FUCK!!!1"
$ rm -rf crap
$ npm uninstall -g @angular/cli
$ sudo pacman -Rs npm1 -
Do reports actually make people dumber?
I write a lot of reports that output for our customers into excel. I'm starting to suspect that for many customers it doesn't actually help them, rather it might actually hurt them (also eat all my time).
If a user generates their own report via search options or etc to pull out some data, they usually SEEM to have put some thought into the actions required to find the data they want.
Accordingly:
1. They immediately know what information is there, and why some information might be excluded.
2. They can do a little trial and error to solve their own problems / better understand what is going on.
3. They're a hell of a lot less likely to insist that something is "MISSING!!!" without seeming to actually know what the thing(s) are that are missing.
With auto generated spreadsheet that shows up in the email there's just little no critical thinking outside of some stray thoughts in their head when the spreadsheet showed up ...2 -
Problem: in assembler, i want to proceed an string byte by byte. How can i do this?
My try:
Mov ebx, 0
S:
Mov eax, [var +ebx]
;somethin
Add ebx, 1
Jmp s
But it doesnt cut off the thing rigth8 -
People talking about getting 100 +1's when I haven't even broken the 50 +1's barrier lol everyone should be having fun here, don't worry guys, stress balls will come 😊
-
Going through online course that uses a language with 1-based indexing. All those errors. Oh the horrors. :-S
-
semiRant
The debugging options in VSCodium for when working with golang have certain limitations on them that have made me start writing more tests inside of my codebase (s).
I find this both beautiful and frustrating at the same time since for 1 it has made me(no, forced me) to learn testing on the language as a primary thing rather than an afterthought (judge me all you want) and if this was added by design to force people into properly writing tests then BRAVO.
Well played Mr. Pike and Mr. Thompson, well fucking played you outstanding beautiful bastards. -
can you please help me with this.
I'm creating dataset of [Leet words][1].
This code is for generating [Leet words][1]. it is working fine with less number of strings but I've nearly 3,800+ strings and my pc is not capable to do so. I've Tried to run this on cloud(30gb RAM) not worked for me. but I think possible solution is to convert this code into numpy but I don't know how. if you know any other efficient way to do this it will be helpful.
Thanks!
from itertools import product
import pandas as pd
REPLACE = {'a': '@', 'i': '*', 'o': '*', 'u': '*', 'v': '*',
'l': '1', 'e': '*', 's': '$', 't': '7'}
def Leet2Combos(word):
possibles = []
for l in word.lower():
ll = REPLACE.get(l, l)
possibles.append( (l,) if ll == l else (l, ll) )
return [ ''.join(t) for t in product(*possibles) ]
s="""india
love
USA"""
words = s.split('\n')
print(words)
lst=[]
# ['india', 'love', 'USA']
for word in words:
lst.append(Leet2Combos(word))
k = pd.DataFrame(lst)
k.head()3 -
Surely there's a way to see where the source of my +1's are coming from? Is it my comments? Is it my rants? There's a +1 leak somewhere and I need to find it.1
-
All of these mentioned below are tools used by web developers. Do pin me if I missed something or incorrectly stated it.
0. laptop
1. Javascript
2.HTML
3.CSS
4.MongoDB
5. Typescript
6. Caffeine
7. wtf!!s12 -
"We'll publish critical vulnerabilities in PGP/GPG and S/MIME email encryption on 2018-05-15 07:00 UTC. They might reveal the plaintext of encrypted emails, including encrypted emails sent in the past. #efail 1/4"
https://twitter.com/seecurity/...
Let's see how this unfolds. While there is chaos I trink some tea and laugh, because I never send critical information over e-mail. 🧐🍵4 -
Looks like no one really purchased devRant collabs listing yet..all were using there +2000's for there 1 free listing 🤔1
-
1) DevGoogle - Google but all queries assume programming sense of query. Also option to add preferred language(s)
2) a universal file system so that my pen drive works on all devices
3) Firewall filter unblocks my personal domain (currently classified as 'Newly Observed Domain') -
Tltr: Apperenticeship -> Job -> Promotion -> They pay for my bachelor
So I started my apperenticeship back in July 2014...
After a year of basic training I worked in different teams accros the company.
I finished my apperenticeship june 2018. Two teams offered me permanent positions early in 2018.
The team I decided to join, had a (back theb new) boss and I felt like she would be cool to work with. (I don't know how to describe this more accuratly... I just liked her visions, plans and what she told me about the work).
Fast forward half a year
I was preparing for the meeting where we would discuss my goals.
(I was preparing to ask for raise...)
Then she goes:
- "Hey NeedToRoll, can I have 10 minutes of your time, its serious!"
* "Sure"
- "Do you habe any Idea why I would wonna talk to you"
* "No" Thinking: What did I fuck up that badly
- "I would Like to thank you for your amazing work, and HR agreed to a 10% raise as per next month."
* "Thanks!"
Fast forward to now:
1. I will reducing to a 50% position (per my request)
2. They are paying for my bachelor s degree I am going to get. (Studying part time)3 -
@dfox love your work. Have an enhancement request for IOS app badge counter: tapping on notification symbol in top right corner to view +1's should be the action to clear the badge counter for +1's, not the action of tapping on individual +1's (there's nothing to read when tapping on them)7
-
Oh yeah ... Java is cool in an utterly sick way even that i can't seem to find a non-retarded built-in stack data structure
Call me a racist, but java.util.Stack has a removeIf() method in case you want to remove odd numbers:
import java.util.Stack;
public class App {
public static void main(String[] args) {
int arr[] = { 2, 4, 7, 11, 13, 16, 19 };
Stack<Integer> s = new Stack<Integer>();
for (int i = 0; i < arr.length; i++) {
s.push(arr[i]);
}
s.removeIf((n) -> (n % 2 == 1));
System.out.println(s); // [2, 4, 16]
}
}
Stop using java.util.Stack they said, a legacy class they said, instead i should use java.util.ArrayDeque, but frankly i can still keep up being racist (in a reversed manner):
import java.util.ArrayDeque;
import java.util.Deque;
public class App {
public static void main(String[] args) {
int arr[] = { 2, 4, 7, 11, 13, 16, 19 };
Deque<Integer> s = new ArrayDeque<Integer>();
for (int i = 0; i < arr.length; i++) {
s.push(arr[i]);
}
s.removeIf((n) -> (n % 2 == 1));
System.out.println(s); // [16, 4, 2]
}
}
The fact that you can iterate through java.util.Stack is amazing, but the ability to insert element in a specified index:
import java.util.Stack;
public class App {
public static void main(String[] args) {
int arr[] = { 2, 4, 7, 11, 13, 16, 19 };
Stack<Integer> s = new Stack<Integer>();
for (int i = 0; i < arr.length; i++) {
s.push(arr[i]);
}
s.add(2, 218);
System.out.println(s); // [2, 4, 218, 7, 11, 13, 16, 19]
}
}
That's what happens when you inherit java.util.Vector, which is only done a BRAIN OVEN person, a very brain oven even that it will revert to retarded
If you thought about using this type of bullshit in Java get yourself prepared to beat the disk for hours when you accidentally call java.util.Stack<T>.add(int index, T element) instead of java.util.Stack<T>.push(T element), you will probably end up breaking the disk or your hand, but not solving the issue
WHY THE F*** CAN'T WE HAVE A WORKING NORMAL STACK ?5 -
Zx81…loved typing machine code directly ..make sure you get those 1’s and 0’s in the right order else Whoosh and start again!
-
Ok new game! 6 degrees of @localhost
Where every rant is only 6 degrees away from @localhost
BEGIN
10 Scroll through some rants
20 random stop at a rant
30 click on that rant
40 Click on the user's name on rant
50 In there profile: click on +1's
60 Click on the first rant you see
GOTO 402 -
The 1080ti is rated at a little more over 11 teraflops. GPUs with over 1 teraflops of compute performance was released in the early 2000's.
It's 2017 and we are stuck with fancy gen xxx cpus.
I smell a huge compute performance wastage.1 -
what is it like to be a staff software engineer, or an engineer at some L5/L6 level ?
can a company have multiple staff software engineers in 1/many domains? like, a guy doing ios app dev for a company for long time, would probably reach till SDE2/SDE3, etc , but why would they be given a role of staff software engineer?
isn't a staff s/w engineer supposed to know the whole system and not just a single part of it?8 -
// !rant
Anybody here knows Backblaze's B2 Cloud Storage?
I am thinking of using it to storage video from a web app that I am developing. The process is:
1 - Send video files (both) to storage w/ cli (Done ✔)
2 - Authorize the asynchronous download and shows it on the HTML5's player (reading the doc ✖).
Question:
Anybody experienced some workflow likes this before? I am trying save some time before break my head after read all CLI doc (only cli, I can't find any workflow of it)1 -
Who thinks a study designed on +1's on a platform which promotes them as a sign of popularity and approval affecting user behavior is in order ?
-
Rembember the good old time when you just needed 10 +1's for stickers? Well live is getting harder from now on.1
-
If you've ever had to do hiring (technical side) of new software developer\s, the seniority in terms of working years is the most valuable criteria for you or the hiring department, or there's else?
On my side I'm a software developer from around 1 year and here (in Italy) your price is, from what I've seen, based on the seniority in terms of time, rarely actual skills\adaptability.
I'm good as a full stack developer and I'm proficient in adapting\learning to-new\new skills about new languages and Frameworks.
Soon I'm leaving my underpaying job with good output from my work\projects, but I'm faced with this seniority nonsense that makes most of the recruiters silent because the new price is similar of someone with high seniority, and I'm kinda tired of this, so I'm here to hear your thoughts about this. -
So trunk-based is the new approach everyone is using, because it is so cool.
I used gitflow for the last projects with azure devops, set up the pipelines like tipically in 1 week if I had other things to do with the help of the portal clicking through things. PR-s triggered pipelines, everything worked cool.
But then trunk-based got momentum, so I worked with this client where 2 developers worked for !!!3 months!!! to setup trunk-based pipeline. It was not my money, so I did not say a thing. They were using infrastructure as code.
I am all in for automation, but seriously? Then again, another project where a DevOps team took 1 dev-month to setup the pipeline + meetings. And what do you get in the end? So that the same image goes on all environments? Like how many releases do you have for prod in a year. Lets say 24. 24 x 5 minutes of manual work for the release, that is 2 hours. So my question is why would you spend 2 hours of manual work while you can automate it merely in a month? Everyone loves to code, but using the ui on the DevOps portal saves you so much time. I don't get this. Maybe I am getting old :D4 -
Ok, there is one good thing. I've reached 333 +1's. Thank you all guys!
Sooo... a few days ago my Power supply from my home pc died. It was a good one, but I don't know.. it just burned nearly..
Today I've received a new one.
Plugged everything in. PC runs - or not?? WTF! Windows (yeah, at home still Windows ) isn't booting anymore. Hardware changes detected. I think, through the broken Power supply something got damaged.. shit.. and know what - don't have any Backup. Shit. At least some important data is on another hdd, which hopefully is fine. Now I'm trying to rescue the data with another hdd installing a fresh Windows.
Whish me luck!
PS: No, the power supply wasn't from Samsung, even when it exploded nearly :P1 -
Hi everyone, I have such a task: “Given an integer square matrix. Determine the minimum among the sums of diagonal elements parallel to the main diagonal of the matrix.” I have a code but I have problems compiling a flowchart for it, can you help me with compiling a flowchart or give tips? thanks in advance!
Thats my code:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N_MIN -3
#define N_MAX 5
int main(int argc, char *argv[]){
int s,i,j,k,l,s1,t2,t1;
int a[5][5];
srand(time(NULL));
for(i=0;i<5;i++){
for(j=0;j<5;j++){
a[i][j]=rand()%(N_MAX-N_MIN+1)+N_MIN;
}
}
for(i=0;i<5;i++){
for(j=0;j<5;j++){
printf("%3d ",a[i][j]);
}
printf("\n");
}
k=0;
s=0;
l=0;
for (i=0; i<5; i++){
for (j=0; j<5; j++){
if (a[i][j]>=0){
if(a[i][j]%2==0)
l+=a[i][j];
k++;
}
}
if (k==5){
l=l;
}
else {
l=0;
}
s=s+l;
k=0;
}
s1=a[0][5-1];
for(i=1; i<5; i++){
t1=t2=0;
for(j=0; j<5-i; j++){
t1+=a[i+j][j];
t2+=a[j][i+j];
}
if(t1<s1) s1=t1;
if(t2<s1) s1=t2;
}
printf("vivod %d %d\n", s,s1);
return 0;
}2 -
Are there any sysadmins here who know how to deal with ddos attacks properly? I can even offer pay. Situation is that I launched my java app (gameserver) on linux debian and configured iptables to allow only specific ips. Basically I made only 1 port open for loginserver and if player logins into loginserver it adds his ip to iptables so hes able to proceed to gamesever. However I am still receiving massive up to 900MB/s attacks for example: http://prntscr.com/q3dwe8
It appears that even if I left only one port open, I still can't defend against ddos attacks. I made some captures with tcpdump and analyzed them on wireshark but to be honest I cant really tell what I'm looking at.
I am using OVH which is supposed to be ddos protected but maybe I messed up during iptables configuration, I'm not sure.
Can anyone help?15 -
!Rant
My first 3D model, https://grabcad.com/library/...
can someone give me some advice on it and how to improve (disregard the parts about grad project that's just school related) I just want to know how to get better at the modeling -
Please give me code snippet to create windows ec2 instance using boto3 within aws free tier limit.
import boto3
# Create an AWS session and EC2 client
aws_management_console = boto3.session.Session(profile_name='....')
ec2_console = aws_management_console.client(service_name='ec2')
def create_ec2_instance():
try:
print("Creating EC2 instance")
ec2_console.run_instances(
ImageId="....",
MinCount=1,
MaxCount=1,
InstanceType="t3.micro",
KeyName="...",
SecurityGroupIds=['...1'] # Specify your security group ID(s) as a list
)
except Exception as e:
print(e)
# Call the function to create the EC2 instance
create_ec2_instance()
Have i missed anything in this code?
It's running fine not creating any instance.4 -
a while ago i was seeing about help for a 3D modeling project. Here is the first draft.
Let me know what you think or some ideas for improvements
https://grabcad.com/library/...