Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "what you think it means"
After over 20 years as a Software Engineer, Architect, and Manager, I want to pass along some unsolicited advice to junior developers either because I grew through it, or I've had to deal with developers who behaved poorly:
1) Your ego will hurt you FAR more than your junior coding skills. Nobody expects you to be the best early in your career, so don't act like you are.
2) Working independently is a must. It's okay to ask questions, but ask sparingly. Remember, mid and senior level guys need to focus just as much as you do, so before interrupting them, exhaust your resources (Google, Stack Overflow, books, etc..)
3) Working code != good code. You are an author. Write your code so that it can be read. Accept criticism that may seem trivial such as renaming a variable or method. If someone is suggesting it, it's because they didn't know what it did without further investigation.
4) Ask for peer reviews and LISTEN to the critique. Even after 20+ years, I send my code to more junior developers and often get good corrections sent back. (remember the ego thing from tip #1?) Even if they have no critiques for me, sometimes they will see a technique I used and learn from that. Peer reviews are win-win-win.
5) When in doubt, do NOT BS your way out. Refer to someone who knows, or offer to get back to them. Often times, persons other than engineers will take what you said as gospel. If that later turns out to be wrong, a bunch of people will have to get involved to clean up the expectations.
6) Slow down in order to speed up. Always start a task by thinking about the very high level use cases, then slowly work through your logic to achieve that. Rushing to complete, even for senior engineers, usually means less-than-ideal code that somebody will have to maintain.
7) Write documentation, always! Even if your company doesn't take documentation seriously, other engineers will remember how well documented your code is, and they will appreciate you for it/think of you next time that sweet job opens up.
8) Good code is important, but good impressions are better. I have code that is the most embarrassing crap ever still in production to this day. People don't think of me as "that shitty developer who wrote that ugly ass code that one time a decade ago," They think of me as "that developer who was fun to work with and busted his ass." Because of that, I've never been unemployed for more than a day. It's critical to have a good network and good references.
9) Don't shy away from the unknown. It's easy to hope somebody else picks up that task that you don't understand, but you wont learn it if they do. The daunting, unknown tasks are the most rewarding to complete (and trust me, other devs will notice.)
10) Learning is up to you. I can't tell you the number of engineers I passed on hiring because their answer to what they know about PHP7 was: "Nothing. I haven't learned it yet because my current company is still using PHP5." This is YOUR craft. It's not up to your employer to keep you relevant in the job market, it's up to YOU. You don't always need to be a pro at the latest and greatest, but at least read the changelog. Stay abreast of current technology, security threats, etc...
These are just a few quick tips from my experience. Others may chime in with theirs, and some may dispute mine. I wish you all fruitful careers!198
Fixing a parents iPhone, episode 1.
Problem: "Whatsapp is gone off my phone"
Me: *unlocks phone and sees whatsapp*, it's right here.
Mam: no, I no that I can't see my messages.
Me: ok, that is definitely not what "whatsapp is gone off my phone means".
*inside add contact screen*
App seems ok, your trying to add a contact?
Mam: that's a problem, whenever I open it I only see that page.
Me: *taps cancel button with shocked face*
Mam: omg there's my messages, how did you do that?
Me: ... ... ... I tapped the very easy to see, large cancel button in the top right hand corner.
Mam: but why was it opened there?
Me: *looks at opened message from unknown number*
If I was to hazard a guess, now stay with me on this one as it's a bit complex. I think ... I THINK ... you clicked the "add to contacts" button on the screen in front of you.
I am suspicious of one thing though.
Mam: what's that?
Me: how you managed to click the add contacts button, and when brought to the add contacts screen, you assume the app is broken.
Mam: oh will you **** off you sarcastic little ****. Thank you very much.
Me: no prob, 4 year computer science course put to great use.21
TLDR : I left a company which doesn't understand the concept of email id and passwords.
Me (trying to login to the alumni website) *no register user option*
Customer support - you've to click on forgot password to create an account.
Me - Wonderful
*clicks on reset password*
*enters employee id, name, email, father's name, DOB, date of joining , date of leaving, current city because apparently if I just enter my employee id it is as if they never knew me. Sigh*
*your password will be sent to your email id*
Me - okay. *waits for two weeks because I assumed someone will manually go and create my account and email me, considering the state of system. *
After two weeks,
Me - I still haven't received my password on email after I created my account. Can you please check?
After one week,
Customer support - you need to click on forget password if you forgot your password.
Me - *inventing new curse words* I have not forgot my password, I never received it in the first place!
After one week,
Customer support - yes you'll receive your password on your email id.
Me - *runs out of curse words* seriously dude?
* proceeds to reset password*
System - your password has been reset. Your new password will be sent to your email id. *apparently anyone can reset passwords if you have the employee id, which is an integer*
After a week
Me - Am I going to ever receive the password? I've tried generating passwords, resetting my password. I never get my passwords. What should I do!!
Customer support - yes you need to click on Forgot password.
Me - are you fucking kidding me!!!
You fuckers need to be fired and replaced by a FAQ page which has no question and just a single answer, because a peanut has higher IQ than you. For any questions you may have, just reset password. Goddammit idiots!
Also, which email id are you sending my passwords to?
Customer support - firstname.lastname@example.org
Me - you do realize that this is the alumni website for the company. Alumni means ex members.
Being ex members, you can assume we don't have access to our company email ids obviously?
Customer support - yes.
Me - how am I supposed to get the password using my old email id then?
Customer support - you need to click on forgot password option.
I think I should probably move to the Himalayas for my anger management issues. Plus it'll be probably easier to throw idiots off a mountain.33
Its Friday, you all know what that means! ... Its results day for practiseSafeHex's most incompetent co-worker!!!
We've had a bewildering array of candidates, lets remind ourselves:
- a psychopath that genuinely scared me a little
- a CEO I would take pleasure seeing in pain
- a pothead who mistook me for his drug dealer
- an unbelievable idiot
- an arrogant idiot obsessed with strings
Tough competition, but there can be only one ... *drum roll* ... the winner is ... none of them!
*audience member: what?*
*audience member: no way!*
*audience member: your fucking kidding me!*
Sir calm down! this is a day time show, no need for that ... let me explain, there is a winner ... but we've kept him till last and for a good reason
You see our final contestant and ultimate winner of this series is our good old friend "C", taking the letters of each of our previous contestants, that spells TRAGIC which is the only word to explain C.
Oh I assure you its no laughing matter. C was with us for 6 whole months ... 6 excruciatingly painful months.
We needed someone with frontend, backend and experience with IoT devices, or raspberry PI's. We didn't think we'd get it all, but in walked an interviewee with web development experience, a tiny bit of Angular and his masters project was building a robot device that would change LED's depending on your facial expressions. PERFECT!!!
... oh to have a time machine
Working with C:
- He never actually did the tutorials I first set him on for Node.js and Angular 2+ because they were "too boring". I didn't find this out until some time later.
- The first project I had him work on was a small dashboard and backend, but he decided to use Angular 1 and a different database than what we were using because "for me, these are easier".
- He called that project done without testing / deploying it in the cloud, despite that being part of the ticket, because he didn't know how. Rather than tell or ask anyone ... he just didn't do it and moved on.
- As part of his first tech review I had to explain to him why he should be using if / else, rather than just if's.
- Despite his past experience building server applications and dashboards (4 years!), he never heard of a websocket, and it took a considerable amount of time to explain.
- When he used a node module to open a server socket, he sat staring at me like a deer caught in headlights completely unaware of how to use / test it was working. I again had to explain it and ultimately test it for him with a command line client.
- He didn't understand the need to leave logging inside an application to report errors. Because he used to ... I shit you not ... drive to his customers, plug into their server and debug their application using a debugger.
... props for using a debugger, but fuck me.
- Once, after an entire 2 days of tapping me on the shoulder every 15 mins for questions / issues, I had to stop and ask:
Me: "Have you googled it?"
C: "... eh, no"
Me: "can I ask why?"
C: "well, for me, I only google for something I don't know"
Me: "... well do you know what this error message means?"
C: "ah good point, i'll try this time"
... maybe he was A's stoner buddy?
- He burned through our free cloud usage allowance for a month, after 1 day, meaning he couldn't test anything else under his account. He left an application running, broadcasting a lot of data. Turns out the on / off button on the dashboard only worked for "on". He had been killing his terminal locally and didn't know how to "ctrl + c a cloud app" ... so left it running. His intention was to restart the app every time you are done using it ... but forgot.
- His issue with the previous one ... not any of his countless mistakes, not the lack of even trying to make the button work, no, no, not for C. C's issue is the cloud is "shit" for giving us such little allowances. (for the record in a month I had never used more than 5%).
- I had to explain environment variables and why they are necessary for passwords and tokens etc. He didn't know it wasn't ok to commit these into GitHub.
- At his project meetups with partners I had to repeatedly ask him to stop googling gifs and pay attention to the talks.
- He complained that we don't have 3 hour lunch breaks like his last place.
- He once copied and pasted the same function 450 times into a file as a load test ... are loops too mainstream nowadays?
You see C is our winner, because after 6 painful months (companies internal process / requirements) he actually achieved nothing. I really mean that, nothing. Every thing was so broken, so insecure / wide open, built without any kind of common sense or standards I had to delete it all and start again ... it took me 2 weeks.
I hope you've all enjoyed this series and will join me in praying for the return of my sanity ... I do miss it a lot.
This story is 100% true.
I got hired onto a team of construction workers to build a house. We set up a meeting with Management to find out what kind of house they wanted us to build, where’s the floor plan, what it’s going to be used for, who it’s for, etc. Management said that they didn’t know all that, we should just get started. They told us that we were going to use “Agile” which means that we just work on small deliverables and build the thing incrementally.
The developer team lead argued that we at least need to know how big the thing is going to be so that we can get started pouring the foundation, but Management told him they just don’t know. “What we do know,” Management said, “is that the house is going to have a bathroom. Just start there, and we’ll know more when it’s done. You have two weeks.”
So we just bought a port-a-potty, and screwed around on the internet for two weeks. Management was outraged. “You call this a house? This is the worst house ever! It doesn’t even have a tv!”
So we bought a tv and put it in the port-a-potty, attached to an outdoor generator. We were going to buy a a dvd player and get it hooked up to cable, but Management rejected the expense request, saying that they didn’t know if we needed it, and we’d come back to that later.
Management decided that we definitely need storage space, so we bought a boxcar and duct-taped the port-a-potty to it. Then to our horror they set up some desks and put a few miserable business interns in there. It went on like this…
After a few years the boxcar grew into a huge, ramshackle complex. It floods, leaks, it’s frozen in the winter and an oven in the summer. You have to get around in a strange maze of cardboard tubes, ladders and slides. There are two equally horrible separate buildings. We’re still using just the one outdoor generator for all power, so electricity is tightly rationed.
Communication between the buildings was a problem. For one of them, we use a complex series of flag signals. For the other we write notes on paper, crumple the paper up, and toss it over. Both of these methods were suggested as jokes, but Management really liked them for some reason. The buildings mostly talk to each other but they have to talk through us, so most of what we do is pass messages on.
It was suggested that we use paper airplanes instead of crumpled up balls, but the fat, awkward fingers of the Business Majors who inevitably take those jobs couldn’t be trained to make them. I built an awesome automatic paper airplane folder, but once again they couldn’t be trained to use it, so they just went back to crumpling the notes up in balls.
The worst part of all this is that it’s working. Everyone is miserable, but the business is making money. The bright side is that this nightmare complex is done so now we know what kind of building they actually needed in the first place, so we can start work on it. Obviously we can’t tell Management anything about what we’re doing until it’s finished. They noticed the gigantic hole in the ground where the foundation is coming in, but we told them that it’s a cache reset, and they mostly ignore it except when the occasional customer falls in.
I’ll probably be out of here before the new building gets finished. I could get a 50% raise by switching jobs, but Management still doesn’t think I should get a raise because I missed a couple sprints.7
Another day, another hit piece against gaming.
So, a 15-year old boy hanged himself and the media goes all „This was caused by this game“, even though NO FUCKING TRACES OF THE GAME WERE FOUND ON THE LAPTOP OF THE DECEASED!!!
And then of course my freaking parents go all lecturing me about how the internet twists the brain into not being adequate towards reality etc.
First off, CAN THE FUCKING COLLECTION OF COCKSUCKERS that is the fucking media just fucking get a grip on reality? It was literally said in the same sentence that the supposed game that caused that was not found in any form on the person's laptop. You would think an online game that you take months to play through would need at least some fucking download to run, right? Unless it was a freaking video chat bullshit that they call a „game“ just for the fucking spite of gamers.
Second, HOW FUCKING LONG WILL IT FUCKING TAKE FOR PEOPLE TO FUCKING ACCEPT THAT IT'S NOT THE TECH THAT MAKES PEOPLE KILL THEMSELVES? How hard is it to fucking understand?
Third... How do people in their 60s freaking think they understand anything about modern gaming when they have no freaking way of interacting with it other than these hit pieces? They certainly give more fucks about what a hired bitch of a lying „journalist“, that cannot even talk properly, says. Oh, they care so much about the children. Have they never thought that people are killing themselves exactly because they feel nobody cares about them?
Fourth. How fucking long do parents like mine deny the reality that just as long as they see me as an incomplete copy of my sisters I will be suicidal? Let me guess... It's video games causing me to be oh, so inadequate when I've not played any of them for quite some time...
Fifth... How am I out of touch with reality when these people have never known how I „work“, so to speak, as a person, and they've been the ones basically dictating all my life? Let me see why I'm unhappy...
I know I complain a lot. Sorry for that. But I just cannot stand people like them. People that lie all the time and project that on you while depriving you of any means of defending yourself in a debate...44
Me - "Has anyone changed the password on the print computer"
Him - "It's the same one."
Me - "Carrots99?"
Him - "Yeah, what's the message that comes up?
Me - "Password is incorrect."
The dumbest conversation I've ever had in my fucking life. You little shit, I know you changed the password just to fuck with people. You've been reading too many books on elevating yourself, tried to be important for something. It means fuck all if you can't remember what you changed it to. So you held up two hours of my work, not to mention everyone else, because you can't help but stick your beak in shit. You dont think people can't see what youre doing? Watching you scurry over to the computer with a big smile, only a to fuck off silent as a mouse not to be seen mumbling some shit about a system administrator. Yeah you forgot it you prick.
Stop sucking up to the boss, and commanding people on what to do, when you're as junior as junior gets. Don't change our fucking passwords, just so you can have the whole team approach you the next day asking for you, then not remember them. You cunt.13
I'm tired of working for small companies.
I'm always either the sole developer, or the only dev for a specific stack, and therefore don't have anyone to ask for help. If I can't figure something out, it just doesn't get done.
It also means I don't have anyone to bounce ideas off, do code reviews with, or even friggin' have someone who understands what I do.
It would be nice to have someone I could actually ask for help! As it stands, I tear my hair out in frustration until I'm desperate enough to beg for help on discord or SO. whereupon, of course, I get ignored, as per usu. asdjfklasdjf
It really sucks.
It also means that I'm often surrounded entirely by sales people and managers... you know, those super-talkative people? who basically get paid just to talk? and are absolutely computer illiterate? Yeah. Think someone who says "I need my deliverables by end-of-week," "customer success representative," "turnkey solution," etc. completely seriously. (ew).
They're the people who constantly wonder why I can't push `n` features in `n/4` days, and ofc can't understand anything I say in response because of the aforementioned illiteracy. They're also the people who, almost every week, ask how long `y` is going to take, and then yell "But I need it by Friday! I just sold 50 clients on it!" (And they do this, of course, without ever asking for timelines)
It really fucking sucks.
Though I suppose larger companies would still have these problems.
but at least I could ask for help once in awhile. that would be nice.40
I turned 40 yesterday. Here are some lessons I've learned, without fluff or BS.
1) Stop waiting for exceptional things to just happen. They rarely do, and they can't be counted on. Greatness is cultivated; it's a gradual process and it won't come without effort.
2) Jealousy is a monster that destroys everything in it's path. It's absolutely useless, except to remind us there's a better way. We can't always control how we feel, but we can choose how we react to those feelings.
When I was younger, jealousy in relationships always led to shit turning out worse than it probably would have otherwise. Even when it was justified, even when a relationship was over, jealousy led me to burn bridges that I wished I hadn't.
3) College isn't for everyone, but you'll rarely be put square in the middle of so much potential experience. You'll meet people you probably wouldn't have otherwise, and as you eventually pursue your major, you'll get to know people who share your passions and dreams. Despite all the bullshit ways in which college sucks, it's still a pretty unique path on the way to adulthood. But on that note...
4) Learn to manage your money. It's way too easy to get into unsustainable debt. It only gets worse, and it makes everything harder. We don't always see the consequence of credit cards and loans when we're young, because the future seems so distant and undecided. But that debt isn't going anywhere... Try not to borrow money that you can't imagine yourself paying back now.
5) Floss every day, not just a couple times per week when you remember, or when you've got something stuck in your teeth. It matters, even if you're in your 20s and you've never had a cavity.
6) You'll always hear about living in the moment, seizing the day... It's tough to actually do. But there's something to be said for looking inward, and trying to recognize when too much of our attention is focused elsewhere. Constantly serving the future won't always pay off, at least not in the ways we think it will when we're young.
This sentiment doesn't have much value when it's put in abstract, existential terms, like it usually is. The best you can do is try to be aware of your own willingness and ability to be open to experiences. Think about ways in which you might be rejecting the here and now, even if it's as seemingly-benign as not going out with some friends because you just saw them, or you already went to that place they're going to. We won't recognize the good old days for what they were until they're already gone. The trick is having as many good days as possible.
7) Don't start smoking; you'll never quit as soon as you'll think you can. If you do start, make yourself quit after a couple years, no matter what. Keep your vices in check; drugs and alcohol in moderation. Use condoms, use birth control.
8) Don't make love wait. Tell your friends and family you love them often, and show them when you can. You're going to lose people, so it's important. Statistically, some of you will die young, yourselves.
When it comes to relationships, don't settle if you can't tell yourself you're in love, and totally believe it. Don't let complacency and familiarity get in the way of pursuing love. Don't be afraid to end relationships because they're comfortable, or because you've already invested so much into them.
Being young is a gift, and it won't last forever. You need to use that gift to experience all the love that you can, at least as a means to finding the person you really want to grow old with, if that's what you want. Regardless, you don't want to miss out on loving someone, and being loved, because of fear. Don't be reckless; just be honest with yourself.
9) Take care of your body. Neglecting it makes everything tougher. That doesn't mean you have to work out every day and eat like a nutritionist, but if you're overweight or you have health issues, do what you can to fix it. Losing weight isn't easy, but it's not as hard as people make it out to be. And it's one of the most important things you can do to invest in a healthy adulthood.
Don't put off nagging health issues because you think you'll be fine, or you don't think you'll be able to afford it, or you're scared of the outcome. There will always be options, until there aren't. Most people never get to the no-options part. Or, they get there because all the other options expired.
10) Few things will haunt you like regret. Making the wrong choice, for example, usually won't hurt as much. I guess you can regret making the wrong choice, but my deepest regrets come from inaction, complacency and indifference.
So how can we avoid regret? I don't know, lol. I don't think it's as simple as just commiting to choices... Choosing to do nothing is still a choice, after all. I think it's more about listening to your gut, as cliche as that sounds.
To thine own self be true, I guess. It's worth a shot, even if you fail. Almost anything is better than regret.14
A lot of the people are complaining about working in inhumane conditions. I want to debunk some bullshit that I think is causing this.
Devs are hard to find. That makes you valuable. A good dev that actually works for 30-40 hours per week is extremely hard to find.
The relationship with your employer / client should be simple: you work, they pay. What you do NOT:
1. Do not take responsibility for other people's decisions
2. Do not internalize other people's problems (you've got your own, better stick to them)
3. Do not let ANYONE guilt trip you into anything that you're not indeed guilty of.
4. Do NOT work for an effective rate that's significantly lower than you know you can get elsewhere.
There are indeed some utterly evil assholes out there that will try to manipulate you, into thinking that you're "part of the project", or that "you're all a team". Yeah, you are, but when it comes to making money, you'll only get the salary, regardless of how successful your work will be. THEY have a motivation to stay up late, to work extra hours, etc. You DO NOT. If you do that, and don't get paid extra, you're working for free, which means that you're not a professional.
Are you a professional? Then have respect for yourself, and bill for every fucking second of your time. Don't let the assholes think they own you.
As a professional, you MUST do EXACTLY what you're paid to do. No more, no less. Well, if you're feeling good about it, then you can do slightly more. And anyone that's demanding more, basically has no respect for you, and doesn't consider you a professional. That is the plain truth. See it as it is, and handle those scumbags accordingly.5
Me: Oh I see were using a non-standard architecture on this app. I like this bit but what is this doing? never seen it before.
Him: Ah we use that to abstract the navigation layer.
Me: oh ok, interesting idea, but that means we need an extra file per screen + 1 per module. We also can't use this inbuilt control, which I really like, and we've to write a tonne of code to avoid that.
Him: Yeah we wanted to take a new approach to fix X, this is what we came up with. Were not 100% happy with it. Do you have any ideas?
Queue really long, multi-day architecture discussion. Lots of interesting points, neither side being precious or childish in anyway. Was honestly fantastic.
Me: So after researching your last email a bit, I think I found a happy middle ground. If we turn X into a singleton, we can store the state its generating inside itself. We can go back to using the in-built navigation control and have the data being fetched like Y. If you want to keep your dependency injection stuff, we can copy the Angular services approach and inject the singletons instead of all of these things. That means we can delete the entire layer Z.
Even with the app only having 25% of the screens, we could delete like 30+ files, and still have the architecture, at a high level, identical and textbook MVVM.
Him: singleton? no I don't like those, best off keeping it the way it is.
... are you fucking kidding me? You've reinvented probably 3 wheels, doubled the code in the app and forced us to take ownership of something the system handles ... but a singleton is a bad idea? ... based off no concrete evidence or facts, but a personal opinion.
... your face is a bad idea15
curl cheat.sh — get an instant answer to any question on (almost) any programming language from the command line
do curl cht.sh/go/execute+external+program to see how to execute external program in go
And this question: why I actually should I start the browser, and the browser has to downloads tons of JS, CSS and HTML, render them thereafter, only to show me some small output,
some small text, number or even some plot. Why can't I do a trivial query from the command line
and instantly get what I want?
I decided to create some service that will work as I think such a service should work.
And that is how wttr.in was created.
Nowadays you probably know, how to check the weather from the command line, but if not:
(curl wetter in Paris if you want to know the weather in Paris)
After that several other services were created (the point was to check how good the console
can solve the task, so I tried to create services providing information
of various nature: text, numbers, plots, pseudo graphic etc.):
curl rate.sx/btc # to check exchange rate of any (crypto)currency
curl qrenco.de/google.com # to QRenco.de any text
And now last but not least, the gem in this collection: cheat.sh.
The original idea behind the service was just to deliver a various UNIX/Linux command line cheat sheets via curl. There are several beautiful community driven cheat sheet repositories such as tldr, but the problem is that to use them you have to install them first, and it is quite often that you have no time for it, you just want to quickly check some cheat sheet.
With cheat.sh you don't need to install anything, just do:
curl cheat.sh/tar (or whatever)
you will get a cheat sheet for this command (if such cheat sheet exists inf one of the most popular community-driven cheat sheet repositories; but it surely does).
But then I thought: why actually show only existing cheat sheets? Why not generate cheat sheets or better to say on the fly? And that is how the next major update of cheat.sh was created.
Now you can simply do:
and get your question answered
(cht.sh is an alias for cheat.sh).
And it does not matter what language have you used to ask the question. To be short, all pairs (human language => programming language) are supported.
One very important major advantage of console oriented interfaces is that they are easily
programmable and can be easily integrated with various systems.
For example, Vim and Emacs plugins were created by means of that you can
query the service directly from the editor so that you can just write your
questions in the buffer and convert them in code with a keystroke.
The service is of course far from the perfection,
there are plenty of things to be fixed and to be implemented,
but now you can see its contours and see the contours of this approach,
console oriented services.
The service (as well as the other mentioned above services) is opensource, its code is available here:
What do you think about this service?
What do you think about this approach?
Have you already heard about these services before?
Have you used them?
If yes, what do you like about them and what are you missing?26
Tonight I was getting ready to pay my monthly apartment maintenance bill so I Googled my property management company's name because I always forget the url. It's always the first result, but I noticed Google placed a little "This site may be hacked." line of text on their listing.
Seeing that before and knowing what it means, I went into the source for their index page, and to my suspicion, their WordPress installation was hacked with the standard invisible spam links.
I realize this happens to a lot of WordPress blogs, but this is an NYC property management company that is responsible for a lot of buildings and has millions of dollars in contracts. Normally I would inform them, but having dealt with them in the past I don't like them very much, but more importantly, I don't think they'd understand what I was saying because they are so technically inept. They might even think that because I found this, that I had something to do with it.
So devRant, it is up to you. What should I do?22
What they say:
Call from recruiter, “Hi Scott just seen your profile on LinkedIn and think you will be a really good match for a role I’m recruiting for”
what it actually means:
“you have come up in my keyword search and I'm blindly calling you, I haven’t really read your profile”2
Being a programmer on a non-tech startup company is not too bad. That means aside from coding:
- You have to check if the office printer works
- You need to figure out why the phone lines aren't ringing
- You have to teach a stupid colleague on how to unzip a file
- When they give you a task, they'll say that it's "not urgent", but, they just "need it by tomorrow"
- You have to be a "mind-reader" because if something goes wrong, they don't know how to describe what's going on. Or probably, they're just too lazy being specific. They'll just say, "Hey, I have a problem.", and you will be like "What problem? Your dog is sick? You shit your pants? You lost your faith in God? Fuck what?"
- You don't have a time to "focus", because everyone interrupts you for just about anything related to "technology". Yeah, because you're the IT guy
- You always have learned and applied the latest practices/stacks, but no one gives a fuck
- You will start to re-think your life and devrants make you feel better9
Saturday late night wisdom.
Software developers you need to work on communication skills.
Everytime LinkedIn says need a problem solver. It means a guy who can understand what non technical guy is asking for and translate that to a software or at least come up with a example of why he is wrong. Explain them. They are not dumb fellows for asking that feature. You might think the feature is stupid. Don't assume this. Sit with them. Understand thier user flow, understand the frustration your software is causing them. Then you'll see why are asking for that X feature.
Every feature request made is basically my opportunity of understanding of product. Don't wait for users to tell you requirements. Understand and suggest, implement prototypes and show them, a causal question such as "Hey would you think providing a keyboard shortcut for this submission is great?"
Understand our job is not just to write software.
Our job is to solve thier problems using software knowledge.
Don't you agree ?4
Accepts only numbers, so far so good. Until QA files a bug:
"Numeric input accepts the letter 'e' "
Apparently 'e' is a valid because you can input something like '1e3' which fucking means '1000' !
Our team tried to argue with the QA that 'e' is valid because it simply means exponent but they argue a normal user would not know what an exponent means because they are not "mathematically inclined"
Part of me agrees with what the QA argues but then I think an average user who could use a fucking laptop or mobile will most certainly know what an exponent is.13
> Root struggles with her ticket
> Boss struggles too
> Also: random thoughts about this job
I've been sick lately, and it's the kind of sick where I'm exhausted all day, every day (infuriatingly, except at night). While tired, I can't think, so I can't really work, but I'm during my probationary period at work, so I've still been doing my best -- which, honestly, is pretty shit right now.
My current project involves legal agreements, and changing agent authorization methods (written, telephone recording, or letting the user click a link). Each of these, and depending on the type of transaction, requires a different legal agreement. And the logic and structure surrounding these is intricate and confusing to follow. I've been struggling through this and the project's ever-expanding scope for weeks, and specifically the agreements logic for the past few days. I've felt embarrassed and guilty for making so little progress, and that (and a bunch of other things) are making me depressed.
Today, I finally gave up and asked my boss for help. We had an hour and a half call where we worked through it together (at 6pm...). Despite having written quite a bit of the code and tests, he was often saying things like "How is this not working? This doesn't make any sense." So I don't feel quite so bad now.
I knew the code was complex and sprawling and unintuitive, but seeing one of its authors struggling too was really cathartic.
On an unrelated note, I asked the most senior dev (a Macintosh Lisa dev) why everything was using strings instead of symbols (in Rails) since symbols are much faster. That got him looking into the benchmarks, and he found that symbols are about twice as fast (for his minimal test, anyway), and he suggested we switch to those. His word is gold; mine is ignorable. kind of annoying. but anyway, he further went into optimizing the lookup of a giant array of strings, and discovered bsearch. (it's a divide-and-conquer lookup). and here I am wondering why they didn't implement it that way to begin with. 🙄
I don't think I'm learning much here, except how to work with a "mature" codebase. To take a page from @Rutee07, I think "mature" here means the same as in porn: not something you ever want ot see or think about.
I mean, I'm learning other things, too, like how to delegate methods from one model to another, but I have yet to see why you would want to. Every use of it I've explored thus far has just complicated things, like delegating methods on a child of a 1:n relation to the parent. Which child? How does that work? No bloody clue! but it does, somehow, after I copy/pasted a bunch of esoteric legacy bs and fussed with it enough.
I feel like once I get a good grasp of the various payment wrappers, verification/anti-fraud integration, and per-business fraud rules I'll have learned most of what they can offer. Specifically those because I had written a baby version of them at a previous job (Hell), and was trying to architect exactly what this company already has built.
I like a few things about this company. I like my boss. I like the remote work. I like the code reviews. I like the pay. I like the office and some socializing twice a year.
But I don't like the codebase. at all. and I don't have any friends here. My boss is friendly, but he's not a friend. I feel like my last boss (both bosses) were, or could have been if I was more social. But here? I feel alone. I'm assigned work, and my boss is friendly when talking about work, but that's all he's there for. Out of the two female devs I work with, one basically just ignores me, and the other only ever talks about work in ways I can barely understand, and she's a little pushy, and just... really irritating. The "senior" devs (in quotes because they're honestly not amazing) just don't have time, which i understand. but at the same time... i don't have *anyone* to talk to. It really sucks.
I'm not happy here.
I miss my last job.
But the reason I left that one is because this job allows me to move and work remotely. I got a counter-offer from them exactly matching my current job, sans the code reviews. but we haven't moved yet. and if I leave and go back there without having moved, it'll look like i just abandoned them. and that's the last thing I want them to think.
So, I'm stuck here for awhile.
not that it's a bad thing, but i'm feeling overwhelmed and stressed. and it's just not a good fit. but maybe I'll actually start learning things. and I suppose that's also why I took the job.
So, ever onward, I guess.
It would just be nice if I could take some of the happy along with me.8
Insecure... My laptop disk is encrypted, but I'm using a fairly weak password. 🤔
Oh, you mean psychological.
Working at a startup in crisis time. Might lose my job if the company goes under.
I'm a Tech lead, Senior Backender, DB admin, Debugger, Solutions Architect, PR reviewer.
In practice, that means zero portfolio. Truth be told, I can sniff out issues with your code, but can't code features for shit. I really just don't have the patience to actually BUILD things.
I'm pretty much the town fool who angrily yells at managers for being dumb, rolls his eyes when he finds hacky code, then disappears into his cave to repair and refactor the mess other people made.
I totally suck at interviews, unless the interviewer really loves comparing Haskell's & Rust's type systems, or something equally useless.
I'm grumpy, hedonistic and brutally straight forward. Some coworkers call me "refreshing" and "direct but reasonable", others "barely tolerable" or even "fundamentally unlikable".
I'm not sure if they actually mean it, or are just messing with me, but by noon I'm either too deep into code, or too much under influence of cognac & LSD, wearing too little clothing, having interesting conversations WITH instead of AT the coffee machine, to still care about what other humans think.
There have been moments where I coded for 72 hours straight to fix a severe issue, and I would take a bullet to save this company from going under... But there have also been days where I called my boss a "A malicious tumor, slowly infecting all departments and draining the life out of the company with his cancerous ideas" — to his face.
I count myself lucky to still have a very well paying job, where many others are struggling to pay bills or have lost their income completely.
But I realize I'm really not that easy to work with... Over time, I've recruited a team of compatible psychopaths and misfits, from a Ukranian ex-military explosives expert & brilliant DB admin to a Nigerian crossfitting gay autist devops weeb, to a tiny alcoholic French machine learning fanatic, to the paranoid "how much keef is there in my beard" architecture lead who is convinced covid-19 is linked to the disappearance of MH370 and looks like he bathes in pig manure.
So... I would really hate to ever have to look for a new employer.
I would really hate to ever lose my protective human meat shield... I mean, my "team".
I feel like, despite having worked to get my Karma deep into the red by calling people all kinds of rude things, things are really quite sweet for me.
I'm fucking terrified that this peak could be temporary, that there's a giant ravine waiting for me, to remind me that life is a ruthless bitch and that all the good things were totally undeserved.
Ah well, might as well stay in character...
*taunts fate with a raised middlefinger*13
Man, I think we've all gotten way too many of these.
Normally most interactions that I have are through email. Eventually some would try to contact me via phone. These are some:
"Hey! We are calling you from <whatever company name> solutions! (most of them always seem to end on solutions or some shit like that) concerning the Ruby on Rails senior dev opportunity we were talking about via email"
<niceties, how are you doing, similar shit goes here...eventually>
So tell us! how good/comfortable would you say you are with C++?"
Me: I have never done anything serious with c++ and did just use it at school, but because I am not a professional in it I did not list it in my CV, what does it have to do with Rails?
Them: "Oh the applications of this position must be ready to take in additional duties which sometimes happen to be C or C++"
Me: Well that was not anywhere in the offer you sent, it specifically requested a full stack Rails developer that could work with 3 different frontend stacks already and like 4 different databases plus bla bla bla, I did not see c++ anywhere in it. Matter of fact I find it funny, one of the things that I was curious about was the salary, for what you are asking and specifically in the city in which you are asking it for 75k is way too low, you are seriously expecting a senior level rails dev to do all that AND take additional duties with c++? cpp could mean a billion different things"
Them: "well this is a big opportunity that will increase your level to senior position"
Me: the add ALREADY asks for a senior position, why are you making it sound that I will get build towards that level if you are already off the bat asking for seniors only to begin with?
Them: You are not getting it, it is an opportunity to grow into a senior, applicants right now are junior to mid-level
ME: You are all not making any sense, please don't contact me again.
Them: We are looking for someone with 15 years experience with Swift development for mobile and web
Me: What is up with your people not making these requirements in paper? if I knew from the beginning that you people think that Swift is 15 years old I would have never agreed to this "interview"
Them: If you are not interested in that then might we offer this one for someone with 10 years experience as a full stack TypeScript developer.
Me: No, again, check your dates, this is insulting.
* For another Rails position
Them: How good are you with Ruby on Rails in terms of Python?
Me: excuse me? Python has nothing to do with Ruby on Rails.
Her (recruiter was a woman) * with a tone of superiority: I have it here that Python is the primary technology that accompanies Rails development.
Me (thinking this was a joke) : What do you think the RUBY part of Ruby on Rails is for? and what does "accompanies Rails development" even means?
Me: This is a joke, goodbye.
To be fair this was years ago when I still didn't know better and test the recruiters during the email part of being contacted. Now a days I feel sorry for everyone since I just say no without even bothering. This is a meme all on itself which no one has ever bothered to review and correct in years for now. I don't know why recruiters don't google themselves to see what people think of their "profession" in order to become better.
I think people in web development get the short end of the stick when it comes to retarded recruiters more than anywhere else.6
(I wrote most of this as a comment in reply about Microsoft buying GitHub on another rant but decided to move it here because it is rant worthy. Also, no, I'm not a Microsoft employee nor do I have any Microsoft stock).
Microsoft buying GitHub makes sense. They contribute more to the open source community on GitHub than any other company. (Side note, they also contribute/have contributed to the Linux Kernel).
Steve Ballmer isn't running the show anymore. Because of that, we have awesome things like:
* Visual Studio Code - Completely free and powerful light weight IDE for coding in just about any script or language. This IDE is also open source, hosted on GitHub. It can be installed on Win/Mac/Linux.
* Visual Studio Community Edition: fully featured flagship IDE free for solo developers and students, can be installed on Win/Mac.
* Fully featured Sql Server running in a Docker container.
* .Net Core, which can be compiled to native binaries of Windows, MacOS AND Linux. You can't even do that with Java, you have to first have the JVM installed in order to run any kind of Java code on any of those operating systems. .Net Core is also an absolutely beautiful framework with so many features at your disposal.
Yes, they've done bonehead things in the past but who/which company hasn't. Yes, they have Cortana. Yes, they force Bing on you when searching with Cortana (does anyone actually regularly use Cortana? Or Bing?). Yes, their operating system costs money. Yes, their malware-style Upgrade-to-Windows-10 tactics were evil and they admitted such. Yes, they brought ads and other unfortunate things to Skype. I'd be lying if I said I wasn't concerned about that Skype bit translating over into GitHub. BUT, the fact that so many of their employees use GitHub daily means they are dogfooding the platform, which is a positive thing.
Despite the flaws, from the perspective of a software engineer they really should be given a lot of credit for all these new directions they are moving in now. They directly aim to help and contribute to the developer community. Plus, Windows 10 is finally getting a dark theme! haha.
I think Microsoft buying GitHub makes a lot of sense. Of course do what you want about it, feel how you want about it, but casting the same ol' shade at them for anything they do seems a bit like automatic reflex more than anything else.
I'm bracing myself for the impending wave of angry hornets from the nest I just kicked. In all seriousness though, I welcome discussion on the topic even if you feel differently than I do. I'm not saying there's no reason to dislike them, just saying there are lots of new reasons to hate them less and/or appreciate what they are doing now.19
To those that think they can't make it.
To those that are put down by those that don't understand you.
And to those that have never had a dream come true.
Not a rant, but the story of how I got into programming
I've always been into tech/electronics. I remember being told once that when I was 3, I used to take plug sockets to pieces. When I was 7, I built a computer with my dad.
There isn't a thing in my room that hasn't been dismantled and put back together again. Except for the things that weren't put back together again ;)
When I was 15, I got a phone for Christmas. It was a pretty crappy phone, the LG P350 (optimus ME). But I loved it all the same.
However I knew it could do a lot more. It ran a bloated, slow version of Android 2.2.
So I went searching, how can I make it faster, how to make it do more. And I found a huge community around Android ROMs. Obviously the first thing I did was flashed this ROM. Sure, there were bugs, but I was instantly in love with it. My phone was freed.
From there I went on to exploring what else can be done.
I wanted to learn how to script, so over the weekend I wrote a 1000 line batch (Windows cmd) script that would root the phone and flash a recovery environment onto it. Pretty basic. Lots of switch statements, but I was proud of it. I'd achieved something. It wasn't new to the world, but it was my first experience at programming.
But it wasn't enough, I needed more.
So I set out to actually building the roms. I installed Linux. I wanted to learn how to utilise Linux better, so I rewrote my script in bash.
By this time, I'd joined a team for developing on similar spec'd phones. Without the funds to by new devices, we began working on more radical projects.
Between us, we ported newer kernels to our devices. We rebased much of the chipset drivers onto newer equivalents to add new features.
Well, it was exam season. I was suffering from personal issues (which I will not detail), and that, with the work on Android, I ended up failing the exams.
I still passed, but not to the level I expected.
So I gave up on school, and went head first into a new kind of development. "continue doing what you love. You'll make it" is what I told myself.
I found python by contributing to an IRC bot. I learnt it by reading the codebase. Anything I didn't understand, I researched. Anything I wanted to do, google was there to help me through it.
Then it was exam season again. Even though I'd given up on school, I was still going. It was easier to stay in than do anything about it.
A few weeks before the exams, I had a panic attack. I was behind on coursework, and I knew I would do poorly on exams.
So I dropped out.
I was disappointed, my family was disappointed.
So I did the only thing I felt I could do. I set out to get a job as a developer.
At this stage, I'd not done anything special. So I started aiming bigger. Contributing to projects maintained by Sony and Google, learning from them. Building my own projects to assist with my old Android friends.
I managed to land a contract, however due to the stresses at home, I had to drop it after a month.
Everything was going well, I felt ready to get a full time job as a developer, after 2 years of experience in the community.
Then I had to wake up.
Unfortunately, my advisors (I was a job seeker at the time) didn't understand the potential of learning to be a developer. With them, it's "university for a skilled job".
They see the word "computer" on a CV, they instantly say "tech support".
I played ball, I did what I could for them. But they'd always put me down, saying I wasn't good enough, that I'd never get a job.
I hated them. I'd row with them every other day.
By God, I would prove them wrong.
And then I found them. Or, to be more precise, they found me. A startup in London got in contact with me. They seemed like decent people. I spoke with their developers, and they knew their stuff, these were people that I can learn from.
I travelled 4 hours to go for an interview, then 4 hours back.
When I got the email saying they'd move me to London, I was over the moon.
I did exactly what everyone was telling me I couldn't do.
1.5 years later, I'm still working with them. We all respect each other, and we all learn from each other.
I'm ever grateful to them for taking a shot with me. I had no professional experience, and I was by no means the most skilled individual they interviewed.
Many people have a dream. I won't lie, I once dreamed of working at Google. But after the journey I've been through, I wouldn't have where I am now any other way. Though, in time, I wish to share this dream with another.
I hope that all of you reach your dreams too.
Sorry for the long post. The details are brief, but there are only 5k characters ;)23
All web developers should support up to IE9 without any problems.
Why? Because in Korea, it is normal.
Every person uses that damn Win7, which has either IE9 or IE10. Without IE support, no one will browse your webpage.
Now you would ask us, why don't you use other modern browsers?
We would then ask you, why would you install a new browser that is
3. Takes up ram
4. Has so many features
when you have an awesome minimalistic browser that is preinstalled, and works in all Windows? No thanks.
So, if you put a message saying you will soon drop support of IE, it means that you won't target Korea. Just after the support drop, there won't be traffic to your web site.
So what is the point of this rant?
1. We love IE. Lol
2. IE is lightweight, minimalistic, and the fastest browser in the world.
3. All websites should NOT drop support for IE.
4. We don't care whether web devs will have a hard time. We just think websites are built with Wix and Wordpress, and they work in IE, meaning, IE support is the number one priority.
5. If you ever start a business in Korea, and has a website, make sure to hire an senior Korean web dev who has worked with IE for a long time.
6. Here is the tl;dr
Hate us. Period.25
So. I'm trying to use Material Design with Material UI. The components and UI look *great*.
It's from google, though, which really pisses me off. but I like what I can do with the UI.
I really want a grid system for responsiveness. because obviously. besides, i really hate doing all the responsive shit myself. it sucks and i hate it.
Material Design does not include a grid system. okay, it includes a grid component, but it's not for site layout. it's for making a grid of images. or something.
What it does include is a lot of very lengthy documentation on what you should do, complete with fancy graphics saying "THIS IS HOW YOU MUST DO IT OR YOU'RE DOING IT ALL WRONG" -- but they don't actually support it! you must do it all yourself.
Why oh why would they tell you how you must do things if they don't provide the tools to make it possible? fucking google.
You might decide it's a grand idea to interject at this moment and say: "there are plenty of tools out there that allow you to do this!" And sure, you'd be right. however -- and i think this might just barely might be worth mentioning -- THEY REALLY FUCKING SUCK. Hey, let's look at some of the classes! So clear and semantic! This one was nice and simple: "xs4" -- but wtf does that mean? okay, it apparently means 4 columns as they'd appear on an extra-small layout. How does that work on a large layout? Who knows. Now, how about "c12"? okay, maybe 12 columns? but how does that display on a phone with a layout small enough to only have 4 columns? i don't know! they don't know! nobody knows!
oh oh oh oh. and my particular favorite: "mdc-layout-grid__cell mdc-layout-grid__cell--align-bottom" WHAT. THE. FUCK. I'm not writing a goddamn novel! and that one claims to be from google itself. either they've gone insane or someone's totally lying. either way, fuck them.
SO. TERRIBLENESS ASIDE.
Instead of using Material Design v0.fuckoff that lacks any semblance of a grid layout, I figure I'll try v1.0 alpha that actually has one supported natively. It's new and supports everything I need. There's no way this can't be a good idea.
The problem is, while it's out and basically usable, none of the React component libraries fucking work with it. Redux-Form doesn't work with it either because it doesn't understand nested compound controls, and hacking it to work at least triples the boilerplate. So, instead, I have to use some other person's "hey, it's shitty but it works for me" alpha version of someone else's project that works as a wrapper on top of Redux-Form that makes all of this work. yeah, you totally followed that. Kind of like a second-cousin-twice-removed sort of project adding in the necessary features and support all the way down. and ofc it doesn't quite work. because why would things ever be easy?
like seriously, come on.
What i'm trying to do isn't even that bloody hard.
Do I really have to use bootstrap instead?
then again, fuck this significantly more.
I'm unbelievably angry. So please bear with my venting.
QA guy and I are stuck working the entire weekend. A few months ago our company decided to promote an account manager to a Product/Project management role with 0 experience and offering them 0 training. They have no experience working with devs and have been making our lives hell. I work easily 50-60hrs per week and they still budget projects according to 40hrs/week meaning they're stealing my time not to mention they're incorrectly setting the client's and company's expectations.
They now have complete control over roadmaps, client communications (this wouldn't normally be bad except that they're having technical discussions with the client with 0 tech experience), timelines, etc. and since their experience was in account management they are now working with devs but making decisions that exclusively put the client first at all costs, even if it means everyone else has to work weekends while they go on vacation!!!!
I've approached them several times to offer help on budgeting time or to propose that we do a Q4 planning so that we can improve the product instead of stay in a shitty position as we are. I'm responded with "You deal with what's in front of you. It's my job to look at the bigger picture."
They mismanaged a $500,000 project and our CEO got wind of it because the client called him while he was travelling. He in turn gave shit to our Directors who in turn chewed the QA guy and I out. "You need to be more meticulous when deploying. How could you let this happen? We're eating shit because of this. You need to work over the weekend to make up for this", etc.
I'm now directly responsible for having delivered something that wasn't up to standards even though I was already putting in the overtime.
This is honestly fucking ridiculous. How can I be blamed when I'm truly doing the best I can and putting as many hours as I can while edging toward burnout.
I love what I do but I hate feeling extremely pressured to turn down friends and family like this. Maybe I'm just too easy going and need to say no more. Who fucking knows. I know that I'm angry with the company right now.
What do you all think? If you read this rant, thank you. Feels better to write it out.13
Interviewer: Do you mastering PB? Because this company always use PB.
Me: I good on it.
Int: Oh well you're accept here, welcome.
*the first day I joined the company*
Lead. Programmer: Today you will code Java.
Me: Okay sir.
Then I ask what the Interviewer's "PB" means, and I got the answer is Power Builder. I think it's the name of the game I always play, Point Blank.
And I smile, because of my fool, I was accepted to the company.
*sorry in my bad English*10
Very long story ahead!
Yesterday in the evening a friend of mine (calling him F from now on) became the target of something new to me...
Apparently one can fake his phone number through some fishy ways and call people with that number. Someone (we think we might know who it was, the why is at the end) did this yesterday to F.
Here's the whole story:
We were just talking together on a TeamSpeak Server (a program to talk to others on the internet) when suddenly another friend said: "F, why did you just call me three times in a row?" That was the first thing that was a bit suspicious. After that, F got calls from random numbers (even Afghanistan, we are German), and they said something like "Have fun with the police coming to your house". Then there was silence. 10 minutes later his phone rang and there were a ton of pizza delivery services in his town that apparently got pizza orders from him. Then there was silence, again. Suddenly someone with a hidden number called him, a woman's voice said they were the police and if F doesn't stop calling the police there will be consequences. F then told her what was going on but I think she didn't really care. She then wanted to know where F lives, but I told him not to say that, because if it is the police they can find it out by themself and if it's not, they don't need to know that.
Now, a short break: There is some fake information going around about where F lives. I can't remember when we found out but the attacker thought he would actually live there. No idea what happened at that location...
Now back to the story:
Time went by, nothing really happened. Suddenly F shouted: "There are blue lights outside! The police is here!" He muted his microphone and (the following is what he told us what happened) went down to the door (remember, he is 16) and there were two police men. They were asking about why he called the police. F explained what we knew until then, about number spoofing and stuff... They sent a more technical person to him, he understood what F was trying to explain. The police men drove away and he came back to tell us what happened. (Now we get back to what I heared myself.) The mom came in, screamed something that I couldn't understand, and F went offline. We searched who the attacker could have been. And we are pretty sure we found him. That guy connected to our Minecraft server (that's where I know F from) with his real IP, and his main account, which made it easy to search. He also got a static IP which means it doesn't change. We also got some information that in the recent days this guy was talking about VoIP spoofing and such stuff. Another friend of mine, a bit older, found some proofs and I think he will go to the police.
That's it. Thanks for reading.8
After returning back from the company we were purchasing a new phone system (hardware+software, $100K+, kind of a big deal)
VP: “I need the new phone system software integration for our CRM by next week. I need to demo the system for the other VPs”
Me: “No problem. Were you able to get their API like I asked?”
VP: “Salesman didn’t know for sure what that was, but he said all the developer software documentation is on their site.”
Me: “Did he give you a URL? Their main site is all marketing mumbo-jumbo. I assume there is another one specific for developers.”
VP: “Yea, he might have said something, but I don’t understand why you need it. The salesman said the integration would be seamless. He showed me several demos.”
Me: “No, I mean I need to know, is the API a full client install? a simple dll? is this going to be a web service integration? How will I know what to program against?”
VP: “I think I heard him say something about COM? Does that sound like an API?”
Me: “It’s a start. Did he provide you anything, a disk, a flash drive, anything with the software?”
VP: “No, only thing he told me was our CRM integration would be seamless and our development team would have no problems.”
Me: “OK..OK…I get it…he’s a salesman. Is there an 1-800 number I can call? A technical support email address? Anyone technical I can reach out to?”
VP: “Probably, but I don’t understand what the problem is. I need the CRM integrated by next week. I gave the other VPs a promise we would get it done. I do not break promises.”
Me: “Wait…when are we installing the new system?”
VP: “Well, the purchase order will be cut at the end of the month’s billing cycle, the company has about a two month turnaround time to deliver and install the hardware, so maybe 3 months from now? Are you going to be able to have the integration ready for next week?”
Me: “If we won’t see any of the hardware for 3 months, what exactly am I integrating with?”
VP: “That API you wanted or whatever it is. COM…yea, it’s COM. I was told the integration would be seamless and our developers would have no problem. I don’t understand why you can’t simply write the code to make it work. Getting the hardware installed is going to be the hardest part.”
Me: “OK, so I have no documentation, we have no hardware, no software, and no idea what this ‘seamless integration’ means. I’m afraid there isn’t anything I can do right now. ”
VP: “Fine!...I’ll just have to tell the other VPs you were not able to execute the seamless integration with the CRM.”
Which he did. When the hardware+software was finally installed, they hired consultants (because I “failed”). I think the bill was in the $50K range to perform the ‘integration’ which consisted of Excel spreadsheets (no kidding). When approached with the primary CRM integration, the team needed our API documentation, a year’s development time and $300K. I was pissed off enough, and I had the API documentation, I was able to get the basic CRM integration within 3 days. When an agent receives a call, I look up the # in our database, auto-fill the form with the customer info, etc. Easy stuff when you have the documentation.
The basics worked and the VP was congratulated by ‘saving’ the company $300K. May or may not have been bonuses involved, rumors still out on that one, but I didn't see em'. Later my manager told me the VP was really ticked that I performed the integration ‘behind his back’, but because it was a success, he couldn’t fire me.10
The state of the web in 2020:
discussion sites as a medium are dying. chalk that up to censorship.
reddit is an echochamber. twitter is mostly a marketing platform disguised as (anti)social media. instagram is a self promotion/wannabe eceleb site, and youtube is the new hollywood..quickly becoming irrelevant.
facebook is where I (dont) go to (totally not) ignore all the people important to me.
and email is where I go to send letters bordering on hatespeech to my various local and federal "representatives", in between borderline cyberbullying people stupid enough not to automate their spam marketing in 2020. or talking to left/right self-help grifters about the state of society.
in the grim dark future of 2020, the last bastion of intelligent conversation, free speech, and civility, the one shining icon of hope in a dark world..
is the comment section of pornhub videos where a women got stuck under a bed for the 50,000th time. And all I can think is "wow I never knew how easy it was to get trapped under a bed. They should look into fixing this safety hazard."
newsmedia has jumped so many sharks, the fonz now spins in his grave so fast we could hook him up to a generator. meanwhile people hide in their homes for a disease so deadly you have to be tested to know if you even have it.
while ever more car commercials
are released, set to somber but hopeful piano music to the tune of "in this time of social distancing its important to stay close even when we're apart."
Im beginning to think media has become a poison on society, both television and the internet, and like an ersatz cargo cultist worshipping the great-charles- manson-in-the-sky we should all take a page from the unabomber and smash our televisions with hammers before going outside and sawing down the telephone polls.
I jest of course. But there is no denying the inherent appeal of moving from the unsettling uncertainty of complex societies, driven by expertly manipulated fear cycles, to the beatitude-esque simplicty of pastoral protestant style living, sans witch burning and shoe buckles.
And against the reckoning of utopians who are still fresh from the womb as it were, wet behind the ears and smelling of their mother's pussy, I reject the notion that "up" is a synonym for "forward."
Were it the case, every drinking binge, followed by throwing up, would bring us, with each vomitting, one step closer to heaven. Rather the state of affairs is what it is, and what it is, like most of nature, is a cruel master and a harsh teacher. And while we may binge on digital delusions of grandeur and a greater society, rest easy in the nihilistic and sobering thought that we are little more than 200,000 year old cave men wielding magic bricks, and atomic bombs.
..where water flows more readily from metal tubes in our houses than it does from the nile. where food comes to our door at little more than our beck and call.
where we may bath, and sleep, and *shit*, cleanly, comfortably, and safely, wrapped in the (failing) bubble of delusion we all tenaciously grasp collectively, the thing we call "civilization".
an empire of needful things, wanton and fragile.
if we have not gone mad from boredom, I have no doubt we one day will.
it becomes more and more obvious to me every day, had war never existed, it would have been necessary for man to invent it just to have something to do, that didnt include farming, fucking, or building.
And so enters "political idealogy."
How would we ever have enemies if we were allowed to speak our piece instead of being given the means (and reflex dogwhistle training) to silence and destroy one another?
give a man a gun, he'll rob a bank. give a man a bank, he'll rob the world.
give him a media empire or a tech platform, and he'll lie about the theft and convince one half of millions of lemmings to hate all the other lemmings.11
So I had finished my work early in class and asked the teacher if I could do something on my laptop for the remaining half an hour.
I take out my laptop and immediately people start asking if I'm hacking.
3 people come and sit next to me and ask what every line of code means that I write. (I think they got underwhelmed real fast because I was debugging).
The teacher then comes into the room and asks what I was doing and I said just working on an app project. She explains to me that it is illegal for me to be hacking and I could get into serious trouble if I am caught. I facepalm and she says your disturbing everyone else get off of your laptop and read a book.
I left that class thinking is she even qualified, what is she thinking. Are you teachers the same.11
"Ok,. so your saying that its gonna take you 63 hrs to create a simplified CRM with basic functionality and auto fill docs or automated work flow docs as an added feature?"
My response (after already under-quoting and planning on cutting some corners because he has a smaller budget than normally necessary):
"It sounds simpler than it is. There are a lot of things I need to take into account that you wouldn't even think about.
Making sure your emails don't go to the client's spam folder. This requires the sending domain to be verified via DNS settings. I have to ensure your email content passes a spam test (link to text ratio needs to be good). I assumed you'd want an email that has your logo and looks good. This means testing the design in Outlook to make sure it's not broken.
What if the email doesn't send due to an invalid email address, or bounces back? You'll need to be notified.
What if the client list for the week contains duplicates? You need them merged or ignored.
Generating a PDF from HTML can be tricky because the conversion isn't apples to apples so there are things I need to adjust to make them as close as possible.
Making a site completely mobile friendly (the tier 3 option) can be very time consuming as well. It's not about whether or not it fits on a mobile phone, it's about whether or not it's intuitive and useful. You're essentially getting a mobile app without paying for separate development of an app.
If I took everything into consideration and built this to be 100% bullet proof, it would cost tens of thousands.
I'm doing my best to leverage your needs with the probability of running into an issue. I'm not going waste my time/your money on something that will likely never happen."9
Why do people say "Well, I don't know about that" to voice disagreement?
If you admit your own naivety on a subject compared to your peers, if you admit that you do not have the required knowledge to have formed an opinion, how can you disagree?
So it can either be expressed with genuine innocence, like 'Well, I don't know about that, tell me more!', which is never the case.
Or it means "Well I don't know anything about that... and I'm ashamed of the fact that I can't find any counter argument, so I refuse to trust your fucking expertise, shut the fuck up until I give you the right to voice your knowledge"
Which is a bit rude.
Now that we're on the topic of annoying expressions and platitudes...
"It's not rocket science" -- Rocket science, understanding how a rocket works, is surprisingly simple. You fill a cylinder with fuel and oxygen, add a pump or two, put some sparks underneath. Chemical reaction equals energy, direct energetic particles using a nozzle, Newton's first law does the rest. It's so simple that people don't actually study rocket science. They study aerospace engineering, or astrodynamics, which are difficult topics.
So if someone says "Devops is not rocket science", they're right, but for the wrong reason. It's actually harder than rocket science. Maybe easier than developing thermal protection system materials or solving n-body orbital problems with a slide ruler though.
"Great minds think alike" -- No, great minds actually think creatively and generate unique thoughts, if two minds think alike, the solution was just fucking obvious.
"Don't reinvent the wheel" -- First of all, pretty much nothing in code looks or even remotely functions like a simple wheel. Even metaphorically, all existing code equates to oval or square wheels. If you said "Hey, don't bother making better wheels, I like my ride to be bumpy because it stimulates my asshole", say no more, who am I to come between a product manager and their anal stimulation.
Anyway, those were four coworkers who I would've strangled with an Ethernet cable if it weren't for a certain pandemic and the risk of infection which comes with choke-coughing.
What are your linguistic pet peeves you get homicidal over?31
After doing the work he requested as he wanted he was not happy. So i thought we sit and discuss what he didn't like. I was so wrong.
Boss: "...you know what I think you are: a fraud; Masquerading as a developer. The database design you have given is shit. The template I gave you I did in 1 hour. You took half the day."
He gave a simple template to use and he told me to come up with an ecommerce db design via downloading PrestaShop and seeing what is relevant to us.
Me: "what did I do wrong?"
Boss: "you think I don't know what PK means in database design? Why the fuck did you put this here."
Me: "can I expl..."
Boss: "I'm not finished, you been here half the month and what work have you to show for it..."
Me: "I have..."
Boss: "You shut up when I can speaking"
Boss: "You have no work to show for the time you have been here. I tell you what to do. I want someone who is proactive. My friend, you will do the work I tell you to do, you understand?"
Me: "yes but can I just say that I have been doing your work I have the contact the various developers as you..."
Boss: " You shut up when your boss is speaking. Can you do this work? (Slightly long pause)
Me: "I can do it. But, I have done the bits of the work you said I do. I was h..."
Boss "don't give me bullshit stories...you haven't done the work..."
Me: "But you have spoken"
Boss:" You know what Im giving you 1 weeks notice if you are not able to do the work. Can you do it?"
That moment!!! I was literally shaking I could have high fived his face with his laptop.
Me: "yes I can"
Boss: "Then get the fuck out of my sight and do it"8
Can someone explain to me why the fuck I should even care about the fact, that some companies collect, use and sell my data? I'm not famous, I'm not a politician and I'm not a criminal, I think most of us aren't and won't ever be. We aren't important. So what is this whole bullshittery all about? I seriously don't get it and I find it somewhat weird that especially tech guys and IT "experts" in the media constantly just make up these overly creepy scenarios about big unsafe data collecting companies "stealing" your "private" information. Welcome to the internet, now get the fuck over it or just don't be online. It's your choice, not their's.
I honestly think, some of these "security" companies and "experts" are just making this whole thing bigger than it actually is, because it's a damn good selling point. You can tell people that your app is safe and they'll believe you and buy your shit app because they don't understand and don't care what "safe" or "unsafe" means in this context. They just want to be secure against these "evil monster" companies. The same companies, which you portrayed them as "evil" and "unfair" and "mean" and "unrepentant" for over a decade now.
Just stop it now. All your crappy new "secure" messenger apps have failed awesomely. Delete your life now, please. This isn't about net neutrality or safety on the internet. This is all about you, permanently exaggerating about security and permanently training people to be introverted paranoid egoistic shit people so that they buy your elitist bullshit software.
Sorry for my low english skills, but please stop to exist, thank you.65
You know. I have mixed feelings on the way people have been reacting to senzory's rant regarding the way he deals with clients. Some people believe that he is unethical, some people see it as just business(me included) but to see what the community says is somewhat interesting.
First, let me be clear on something: i have been fucked over by clients many times for being a nice guy and trying to play it nicely.
Because of this I am selective of who deserves good treatment and who gets to fuck off. But regardless of the client I do the same thing: regardless of who it is, nice or otherwise. If a project will take 1 week to complete then I tell them that it will take 3 to 4 weeks. Why? Well because I have many things on my plate, I am married and have two children, one lives with me and I try to spend as much time with them as I can. I work from 8 to 6, sometimes later and when I get home I sometimes don't do shit since at work I maintain the web services of 2 fucking college campuses.
I don't look for my clients. Through word of mouth they come to me. And being in a privileged position(there are about 5 devs here and they all suck) they can either do with my times and fees or can fuck off over the border where Pedro will do their shit on vbscript and classic ASP(which I like, but you know why this is not an option in 2018)
Apps can be sold for large quantities of money, regardless of what their use case is, if a company wants to outsource their apps to an external developer(such as yours truly) that means that they are willing to play the game. And that is what business is: a game, a survival game.
Where I live, a company will not think twice of firing a single mother for whatever reason. In the U.S of A, and specially in Texas, you can be fired for whatever reason. I have automated people's jobs without knowing it, I have made people lose their jobs and saved companies thousands with my apps. Things like that were not know to me, had I known that someone would have lost their jobs I would have tried differently.
If a company is willing to tell employees(loyal employees) to fuck off, then i do not regret charging what I do and hustling the way I do with rat faced dickheads that care not for people. If I could I would destroy entire companies here. But that is for another story.
I have been used, insulted, gambled with and have been lied to, to my face by these companies. Which has left me jaded.
Oh now, trust me. I am still highly optimistic and nice. And if someone has a small business and I can help them out, then I will lower my rate and give positive vibes in the hopes of making things better through karma. I want to see the best in people. But this does not stop me from being a shark and giving quotes the way I do.
Because companies, as an overall entity are not people with the best intentions(sometimes) and they will not take your kindness, they will take advantage if possible in an effort to save money. Its just dickhead business.
So why, as a professional and privileged developer that obtained his skills through intense study and practice, a wizard by all means, should lower to these nameless, Faceless entities?
Why should i give them the fairness they do not give others? Why should I play the high morale game and come out as a loser?
At the end of the day, I get to swim in my own pool of success, knowing that they did not get the chance to fuck me over
So if you tell me that you took advantage of your hard earned skillset, and built a cross platform app(which compiles to native binaries) and sold 2 products for one, I will tell you that you are an excellent player at their game. If you tell me that you finished before and got to charge for 2 weeks of work doing just 2 days I will say that you are an excellent time manager. And if you tell me that at the end of the day you managed to keep said customer I will tell you that you are a true professional.
There is a difference lads, in selling a product to big momma jamma's cajun restaurant, to the largest logistics company around.
Be nice to those that desserve it.7
I just tried to sign up to Instagram. I made a big mistake.
First up with Facebook related stuff is data. Data, data and more data. Initially when you sign up (with a new account, not login with Facebook) you're asked your real name, email address and phone number. And finally the username you'd like to have on the service. I gave them a phone number that I actually own, that is in my iPhone, my daily driver right now (and yes I have 3 Androids which all run custom ROMs, hold your keyboards). The email address is a usual for me, instagram at my domain. I am a postmaster after all, and my mail server is a catch-all one. For a setup like that, this is perfectly reasonable. And here it's no different, devrant at my domain. On Facebook even, I use fb at my domain. I'm sure you're starting to see a pattern here. And on Facebook the username, real name and email domain are actually the same.
So I signed up, with - as far as I'm aware - perfectly valid data. I submitted the data and was told that someone at Instagram will review the data within 24 hours. That's already pretty dystopian to me. It is now how you block bots. It is not how Facebook does it either, at least since last time I checked. But whatever. You'd imagine that regardless of the result, they'd let you know. Cool, you're in, or sorry, you're rejected and here's why. Nope.
Fast-forward to today when I recalled that I wanted to sign up to Instagram to see my girlfriend's pictures. So I opened Chromium again that I already use only for the rancid Facebook shit.. and it was rejected. Apparently the mere act of signing up is a Terms of Service violation. I have read them. I do not know which section I have violated with the heinous act of signing up. But I do have a hunch.
Many times now have I been told by ignorant organizations that I would be "stealing" their intellectual property, or business assets or whatever, just because I sent them an email from their name on my domain. It is fucking retarded. That is MY domain, not yours. Learn how email works before you go educate a postmaster. Always funny to tell them how that works. But I think that in this case, that is what happened.
So I appealed it, using a random link to something on Instagram's help section from a third-party blog. You know it's good when the third-party random blog is better. But I found the form and filled it in. Same shit all over again for info, prefilling be damned I guess. Minor convenience though, whatever.
I get sent an email in German, because apparently browsing through a VPS in Germany acting as a VPN means you're German. Whatever... After translating it, I found that it asks me to upload a picture of myself, holding a paper in my hands, on which I would have a confirmation code, my username, and my email address.. all hand-written. It must not be too dark, it must be clear, it must be in JPEG.. look, I just wanted to fucking sign up.
I sent them an email back asking them to fix all of this. While I was writing it and this rant, I thought to myself that they can shove that piece of paper up their ass. In fact I would gladly do it for them.
Long story short, do not use Instagram. And one final thing I have gripes with every time. You are not being told all the data you'll have to present from the get-go. You're not being told the process. Initially I thought it'd just be email, phone, username, and real name. Once signed up (instantly, not within 24 hours!) I would start setting up my account and adding a profile picture. The right way to ask for a picture of me! And just do it at my own pace, as I please.
And for God's sake, tackle abuse when it actually happens. You'll find out who's a bot and who isn't by their usage patterns soon enough. Do not do any of this at sign-up. Or hell, use a CAPTCHA or whatever, I don't fucking care. There's so many millions of ways to skin this cat.
Facebook and especially Instagram. Both of them are fucking retarded.8
So everyone is complaining about working from home. Fuck it, I love it. My productivity was never higher than now.
I didn't have an office space before at home, so I created one. I spent money on it but that's good because this whole corona thing made me realize how much I don't miss:
- company politics, who said what said
- people bothering you in the middle of you doing something
- catching-up breaks with people I hardly care about asking about holiday I took last year but they "ahhh thought it was just last week! so did you eat anything nice?"
- answering forced "any plans for the weekend" questions
- participating in conversations about nothing
The worst thing is that I'm actually a very sociable person 😂 so working from home means I can go meet my friends at 1630 sharp instead of 19.
I just don't need those fake relationships at work I guess.
Im already discussing with my manager possibility to work from home most of the time and I think I'll soon start to search for something 100% remote.17
Navy story time again. Lots of blabbering, you have been warned.
I haven't written for some time, due to paperwork bullshit that can be easily automated by even the most shitty database... no, scratch that, the simplest Excel spreadsheet with basic formulae. But I digress.
On my quest to justify myself being unproductive, I'll share with you a small story I omitted from this post:
The lunacy of the man involved, while certainly entertaining after a few years (and nautical miles) away, is certainly disturbing and most certainly true. (Late disclaimer: ALL my rants are not made-up. This is shit that truly happened before my very eyes, and while I was sober.)
After I set up some cute little stuff to try and get the CO interested, in order to give me permission (and a cut from the budget) to proceed in restructuring and upgrading the ship's net, I tried a more direct approach: connecting and setting up his work laptop with the ship's GPS, radar and AIS receptor via ethernet, and installing an ECS system so that he could monitor the ship's position, movement and targets from his office (the fat fuck couldn't be bothered to go up one deck). A day later he called me to his office.
Expecting some kind of... praise? Permission? Complaints on the font style? whatever, I entered. Oh, how I wish I had not.
I was barraged for TWO FUCKING HOURS by the CO, complaining that I was taking care of the net and PCs and neglecting the Navigation department (I was not, automation is my friend combating moronic paperwork). I would have thought it as just another failed attempt, but after TWO MINUTES from the end of the barrage:
CO:... so, my personal laptop is kind of slow, you think you can do anything about it?
What was rushing through my mind was somewhere between bipolar and multiple personality disorder, with the third option of Alzheimer's disease. I half-expected some Candid Camera crew to pop out, but no.
CO: So? Can you speed up my laptop?
ME: ............................... I don't know, sir, I have paperwork to take care of.
CO: That can wait, surely you can do something about it, you know computers.
ME: [really long pause, blood pressure rising] I'll look into it in a moment, sir.
And I never did. I told of the incident to the ship's doctor, and he expressed great worry over this, but in the end, nothing was done.
My sympathies to everyone who has to interact with non-technicians of the homo sapiens species (ironically, homo sapiens means "wise man" in latin... the irony).3
How did you break through your own barriers to finally learn programming?
My SO is constantly complaining that we don’t have enough money. I make a decent amount as a full-time dev at a large company, but we live in an expensive city and are currently going through a time of few funds.
He started driving delivery food orders, he likes it okay, but it pays very little. He still complains about money.
He doesn’t want to learn. He doesn’t think he is capable. I remember this feeling before I learned to code. A chunk of someone else’s JS does look genuinely terrifying if you don’t know what it means. I want him to give it one honest try before he decides it’s “not for him,” but he isn’t open to it enough to try.
What can I do to help him understand he is capable? He’s in his mid-30s and insists he’s too old to catch up. He’s smart, detail-oriented, and I know he would write code that’s a million times cleaner than mine. He absolutely has a programmer inside of him, and I want to encourage him to simply try.
Is there something I can to do introduce JS in a non-threatening way? Or should I just accept his refusal and let it go? Thanks for any advice.19
I finally moved to Fedora Silverblue 30 which is a really awesome OS.
Silverblue Edition unlike the standard version, runs a immutable core. That means the entire FS is not writable except for certain parts that are mounted to /var. While this is limiting, this allows for atomic updates, which is the whole point of Silverblue.
Now this also might throw off even myself, because I might need to run VSCode in the host and I might need C++ libs. Fortunately there's a tool named toolbox that allows you to use standard DNF inside a OCI container. Now the thing is, now you need to tell your IDE to use it after installing it.
I wrote a little helper script to do just that. I wrote it primarily for VSCode but it should also work for your IDE if you happen to want to try to use Silverblue.
Helper script: https://t.co/sXYOgcwLBg?amp=1
Also if you wanna try Silverblue for yourself, here's some notes:
* To install apps, you need to run flatpak. Make sure you also have the flathub repo listed.
* don't use the Flatpak version of the IDEs. If possible, use the RPM versions. Silverblue allows you to install traditional packages (to some degree, not everything works in this thing because of the immutable design) in the host. So as much as possible if you need dev libs, use toolbox for those.
* Silverblue also comes with podman and buildah installed (aka what if Docker had no daemon and was more secure?)
*Do your updates via rpm-ostree upgrade, or turn the auto updater on if you're lazy
All in all I like this environment, I've used this kind of workspace before (Chrome OS), so its pretty easy for me to get used to.
What do you think guys, think you'll give it a shot?5
Dealing with other technical professionals who cannot think outside their respective boxes.
Here is an example.
A QA (who is very good at her job) said this...
“We need to get one customer who is willing to pay us a lot of money to make the features they want!”
“But you realize we are a SaaS company and that means we need lots of customers and constant growth”
“No, we need to find a customer who is willing to pay us, like a million, to make the features they want. Then we make them for that customer. Then we do that again.”
“We sell software to small businesses, none of them have a million dollars to pay us, and even if they did then why wouldn’t they build it themselves?
“Well, when I worked for my last company this is what we did...”
“So you worked for a contracting company who built software for individual companies. We are not that type of company. We are a SaaS company.”
“It’s the same thing”
As a software developer and entrepreneur it frustrates me when everyone think everything is the same.
You’ll here things like...
“All we need is to get lucky with one big hit and then we will ride that wave to success, just like Facebook or Amazon!”
Holy fucking shit balls, how stupid can you be!
FB and AZ run thousands of tests a day to see what works. They do not get “lucky”. They dark launched FB messenger with thousands of messages and then rolled it out to their internal team first, they did not get lucky!
Honestly though, I can’t blame them. Most people just want a good job that pays. They aren’t looking to challenge their assumptions.
Personally I know I will be in situations again where my pride, my assumption, my fears are realized and crushed by the market place and I do not want to live in a world of willful ignorance.
I’d rather get it right than feel good.1
Today teacher started to calculate some thing on blackboard and result was 404 then i started to laught and said "i cannot see the result i think you have a problem fix it" he was like what classmates started to laught too after i teach teacher what 404 means in programming life he was like woow finally got that haha.
It was my first time in Berlin. I came as a tourist but started looking for a workplace, with hopes of getting a blue card and continuing work.
I searched online, going through some hiring platforms, and sent out a few messages around. I felt a special connection (I thought I was exactly who they needed), and wrote them a carefully crafted letter of intention alongside my lavish CV.
They got back to me, and I was given this task, to do while at home. I completed it, had a phone interview, and was invited on-site for a face to face interview. Everybody felt warm, I felt a connection. We already talked salary expectations, and all was going great.
They told me they'd get back to me for the next stage. ...
and they actually DID. Yes, they did!
They invited me for a second interview, but this time to prepare a technical topic to present. So I did. I picked one of the 3 topics they offered, which was about performance optimization. I had recently read materials about that, so I felt really empowered.
So far nobody told me what I was supposed to be doing at the new job, I only knew the technologies required, and what the company did for money.
I prepared a thorough presentation, with practical demos of why some things are bad for performance. While I was showing it, many people in the room were learning about this for the first time, which means I did good. The team lead had some extra questions that I wasn't able to answer in full (needed some research), but otherwise it was great.
The CTO then asked me out to lunch, to talk over some more stuff, and we had a general discussion about what drives us, our life story, etc. He said that he'd really like me to be part of the team, and that he's looking forward to working with me.
So I've been at it for almost a month. I've met everyone, got acquainted with the team, knew the biography of some of them, proven my worth, etc. I was ensured with body language, and verbal language that everything was going great. As careful as I was with this kind of stuff, I was positive that I'd get the job. I even started planning my trips, to get the documents ready.
And then I got a message stating the usual stuff "Thank you bla bla bla we don't think we'll need your services". I was shocked, but in good faith I wanted to reply something along the lines "I'm sorry it didn't work out, all the best in finding what you're looking for", but I found out that I was blocked from contacting them.
That's right. Rejected + blocked. After a month of fucking foreplay. I get rejection, even though it hurts. But being blocked?! That's just insane!8
Dogecoin hit USD $0.40 recently, which means it's time for the Crypto Rant.
TL;DR: Dogecoin is shit and is logically guaranteed to eventually fall unless it is fundamentally changed.
If you know how Crypto works under the hood, you can skip to the next section. If you don't, here's the general xyz-coin formula:
Money is sent via transactions, which are validated by *anybody*.
Since transactions are validated by anybody, the system needs to make sure you're not fucking it up on purpose.
The current idea (that most coins use today) is called proof-of-work. In short, you're given an extremely difficult task, and the general idea is you wouldn't be willing to do that work if you were just going to fuck up the system.
For validating these transactions, you are rewarded twofold:
1) You are given a fixed-size prize of the currency from the system itself. This is how new currency is introduced, or "minted" if you prefer.
2) You are given variable-size and user-determined prize called "transaction fees", but it could be more accurately called a "bribe" since it's sole purpose is to entice miners to add YOUR transaction to their block.
This system of validation and reward is called mining.
This smaller section compares the design o f BTC to Dogecoin - which will lead to my final argument
In BTC, the time between blocks (chunks of data which record transactions and are added to the chain, hence blockchain) is ten minutes. Every ten minutes, BTC transactions are validated and new Bitcoins are born.
In Dogecoin, the time between blocks is only one minute. In Theory, this means that mining Dogecoin is about ten times easier, because the system expects you to be able to solve the proof of work in an average of one minute.
The huge difference between BTC and Doge is the block reward (Fixed amount; new coins minted). The block reward for BTC is somewhat complicated compared to Doge: It started as 50 BTC per block and every 4 years it is halved ("the great halving"). Right now it's 6.25 BTC per block. Soon, the block reward will be almost nothing until BTC hits it's max of 21 million bitcoins "minted".
Dogecoin reward is 10,000 coins per block. And it will be that way for the end of time - no maximum, no great halving. And remember, for every 1 BTC block mined, 10 Doge blocks are mined.
Bitcoin and Dogecoin are now the two most popular coins in pop culture. What makes me angry is the widespread misunderstanding of the differences between the two. It is likely that most investors buy Dogecoin thinking they're getting in "early" because it's so cheap. They think it's cheap because it isn't as popular as Bitcoin yet. They're wrong. It's cheap because of what's outlined in section two of this rant.
Dogecoin is actually not very far off Bitcoin. Do the math: there's a bit over 100 billion Dogecoin in circulation (130b). There's about 20 million BTC. Calculate their total CURRENT values:
130b * $0.40 = 52b
20m * $60k = 1.2t
...and Doge is rising much, much faster than BTC because of the aforementioned lack of understanding.
The most common thing I hear about Doge is that "nobody expects it to reach Bitcoin levels" (referring to being worth 60k a fucking coin). They don't realize that if Doge gets to be worth just $10 a coin, it will not just reach Bitcoin levels but overtake Bitcoin in value ($1.3T).
It's worth highlighting that Dogecoin is literally designed to fail. Since it lacks a cap on new coins being introduced, it's just simple math that no matter how much Doge rises, it will eventually be worthless. And it won't take centuries, remember that 100k new Doge are mined EVERY TEN MINUTES. 1,440 minutes in a day * 10K per minute is 14.4 million new coins per day. That's damn near every Bitcoin to ever exist mined every day in Dogecoin9
> Worst work culture you've experienced?
It's a tie between my first to employers.
First: A career's dead end.
Bosses hardly ever said the truth, suger-coated everything and told you just about anything to get what they wanted. E.g. a coworker of mine was sent on a business trip to another company. They had told him this is his big chance! He'd attend a project kick-off meeting, maybe become its lead permanently. When he got there, the other company was like "So you're the temporary first-level supporter? Great! Here's your headset".
And well, devs were worth nothing anyway. For every dev there were 2-3 "consultants" that wrote detailed specifications, including SQL statements and pseudocode. The dev's job was just to translate that to working code. Except for the two highest senior devs, who had perfect job security. They had cooked up a custom Ant-based build system, had forked several high-profile Java projects (e.g. Hibernate) and their code was purposely cryptic and convoluted.
You had no chance to make changes to their projects without involuntarily breaking half of it. And then you'd have to beg for a bit of their time. And doing something they didn't like? Forget it. After I suggested to introduce automated testing I was treated like a heretic. Well of course, that would have threatened their job security. Even managers had no power against them. If these two would quit half a dozen projects would simply be dead.
And finally, the pecking order. Juniors, like me back then, didn't get taught shit. We were just there for the work the seniors didn't want to do. When one of the senior devs had implemented a patch on the master branch, it was the junior's job to apply it to the other branches.
Second: A massive sweatshop, almost like a real-life caricature.
It was a big corporation. Managers acted like kings, always taking the best for themselves while leaving crumbs for the plebs (=devs, operators, etc). They had the spacious single offices, we had the open plan (so awesome for communication and teamwork! synergy effects!). When they got bored, they left meetings just like that. We... well don't even think about being late.
And of course most managers followed the "kiss up, kick down" principle. Boy, was I getting kicked because I dared to question a decision of my boss. He made my life so hard I got sick for a month, being close to burnout. The best part? I gave notice a month later, and _he_still_was_surprised_!
Plebs weren't allowed anything below perfection, bosses on the other hand... so, I got yelled at by some manager. Twice. For essentially nothing, things just bruised his fragile ego. My bosses response? "Oh he's just human". No, the plebs was expected to obey the powers that be. Something you didn't like? That just means your attitude needs adjustment. Like with the open plan offices: I criticized the noise and distraction. Well that's just my _opinion_, right? Anyone else is happily enjoying it! Why can't I just be like the others? And most people really had given up, working like on a production line.
The company itself, while big, was a big ball of small, isolated groups, sticking together by office politics. In your software you'd need to call a service made by a different team, sooner or later. Not documented, noone was ever willing to help. To actually get help, you needed to get your boss to talk to their boss. Then you'd have a chance at all.
Oh, and the red tape. Say you needed a simple cable. You know, like those for $2 on Amazon. You'd open a support ticket and a week later everyone involved had signed it off. Probably. Like your boss, the support's boss, the internal IT services' boss, and maybe some other poor sap who felt important. Or maybe not, because the justification for needing that cable wasn't specific enough. I mean, just imagine the potential damage if our employees owned a cable they shouldn't!
You know, after these two employers I actually needed therapy. Looking back now, hooooly shit... that's why I can't repeat often enough that we devs put up with way too much bullshit.3
Okay you bastards ya got me: I fucking enjoy using Linux as my dev environment.
There, I SAID IT -
BUT DON'T THINK FOR A SECOND IT MEANS THAT I STOPPED HATING IT
Oh the fucking love hate relationship to fucking Linux.
"Hey, ihatecomputers! How many hours per year did you spend fixing internet connectivity issues on Windows?" you ask. Well, close to fucking 0 you goddamned imbecile. But on Linux? I don't even want to talk about it.
And what about that time when I wanted to connect my bluetooth headphones so I could listen to music while studying? Well, by the time my headphones were connected to my machine (usually a one second operation) I had no time left for, you know, actual studying. Oh my god, it's the most trivial fucking thing.
Well, at least that particular issue got solved.
Unlike that fucking Ethernet connection which has been fucking out of commission since I started using fucking Linux. Wifi works just well enough to make it not worth pouring more time into troubleshooting that shit, but just barely though because my wifi IS FUCKING DOGSHIT ON LINUX
But fuck me if it isn't it the most lean thing ever! It's the goddamned opposite of bloated. So smooth and snappy. And free as in slurred speech, or whatever. It makes me happy. When I'm not seething with rage, that is.
Yeah I guess that's it, thanks for tuning in.
I used to think I was average, dumb even. I learn, investigate, fix, create things, and I get paid. Everywhere I go, I meet developers who know more than I do. They know all the new tools and I just couldn't care unless I have to use them. But given a few months, the fantasy dies. I don't expect them to be perfect but it often turns out, they can't even do the simplest things or figure things out.
The more I work with other people, the more I learn that doing these basic things are the norm but only in my fantasy. I'm not gonna get into a philosophical argument on what "basic" means, let's assume "read and write". In my head, it only makes sense that if you're paid to do something, you can do it or at least learn how to do it. There's no shame in asking for help but you should learn over time and not be a burden to your colleagues. It's okay to fuck up but it shouldn't be a regular thing.
I wondered if it's just in my country but I had to remind myself that most of the people I worked with aren't even here then I thought, "Well, maybe it's just these types of companies." Then I was hired by some company in Silicon Valley, I thought "Wow, I guess I'm pretty good at deception." A few months in, same shit. Yeah, yeah, stereotypes, I know. I don't care about your damn "just because a company is blah blah blah". I don't fucking care, man. I lived long enough. Just listen or read. Whatever thought you have right now, whatever emotion you have right now, let it go. I know your fingers are itching to type those words and point out the flaws in my "logic" and nitpick every side I chose not to write about. Listen, I'm not trying to argue with you.
Anyway, I notice this on devRant too. I can't count how many times someone posted something and another guy writes an essay in the comments section making all kinds of assumptions. All that energy would have been saved if they did something very basic - read. It's almost always the case of not reading or having very poor reading comprehension. The most notorious ones give such strong emotional reactions even on things that are so absurd, it has to be a joke and then they go around "correcting" people's "statements" like the smart people they think they are and they just look like clowns arguing with themselves.
The point is.. nil. I'm just rambling.7
A discussion about writing tests for frontend applications.
Context: my frontend coworkers don't write tests, at all. Yeah, really. Our testing process is very manual. We test manually when developing. We test manually when reviewing code. After merging, the application is deployed to a staging server and the design team does a QA Sprint. Lots of manual testing and some bugs still crawl by.
So I decided to start pushing my coworkers to start writing tests. One of the reasons I constantly hear them say to not write tests in the frontend is: "It's not worth the time, because design keeps changing, which means we have to take time to fix the tests. Time that we usually don't have."
I've been thinking about this a lot and it seems to me that this is more related to bad tests than to tests in general.
Tests should not break with design changes (small changes at least). They should test funcionality, not how things look. A form should not break if the submit button's style changes, so why should its tests fail? I also think that tests help save time, as they prevent some back and forth because of bugs.
Writing good tests is the hard part. Tests that cover what's really important and aren't frail and break with things that shouldn't break them. What (and how) should we test? And what shouldn't be tested?
Writing them fast is another hard thing. Are you doing it right if they take more time to write than the actual code?
What do you think about this? Do you write tests for your frontend applications? What do you test? How much time do you spend writing tests? What are your testing tools/frameworks?6
So recently I did a lot of research into the internals of Computers and CPUs.
And i'd like to share a result of mine.
First of all, take some time to look at the code down below. You see two assembler codes and two command lines.
The Assembler code is designed to test how the instructions "enter" and "leave" compare to manually doing what they are shortened to.
Enter and leave create a new Stackframe: this means, that they create a new temporary stack. The stack is where local variables are put to by the compiler. On the right side, you can see how I create my own stack by using
mov rbp, rsp
sub rsp, 0
(I won't get into details behind why that works).
Okay. Why is this even relevant?
Well: there is the assumption that enter and leave are very slow. This is due to raw numbers:
In some paper I saw ( I couldn't find the link, i'm sorry), enter was said to use up 12 CPU cycles, while the manual stacking would require 3 (push + mov + sub => 1 + 1 + 1).
When I compile an empty function, I get pretty much what you'd expect just from the raw numbers of CPU cycles.
HOWEVER, then I add the dummy code in the middle:
mov eax, 123
add eax, 123543
mov ebx, 234
and magically - both sides have the same result.
For one thing, there is CPU prefetching. This is the CPU loading in ram before its done executing the current instruction (this is how anti-debugger code works, btw. Might make another rant on that). Then there is the fact that the CPU usually starts work on the next instruction while the current instruction is processing IFF the register currently involved isnt involved in the next instruction (that would cause a lot of synchronisation problems). Now notice, that the CPU can't do any of that when manually entering and leaving. It can only start doing the mov eax, 1234 while performing the sub rsp, 0.
NOW: notice that the code on the right didn't take any precautions like making sure that the stack is big enough. If you sub too much stack at once, the stack will be exhausted, thats what we call a stack overflow. enter implements checks for that, and emits an interrupt if there is a SO (take this with a grain of salt, I couldn't find a resource backing this up). There are another type of checks I don't fully get (stack level checks) so I'd rather not make a fool of myself by writing about them.
Because of all those reasons I think that compilers should start using enter and leave again.
This post showed very well that bare numbers can often mislead.24
"Graphics don't matter."
I ranted a while back about gamedev being hard to get into for me, and, today, user @DOSnotCompute posted a similar experience.
I had a couple more thoughts, so thought should post them here (FUCK! It ended up being too fucking long! sorry!)
So I was watching the making of mortal kombat 3 on yt, which was pretty amazing btw because I got to see the actors of the sprites in game which were engraved in my and thousands of others kids minds.
Anyhow, the creators of the series, John Tobias and Ed Boon, were interviewed and what not. And it hit me that while both were the designers, John was the main artist and Ed was the programmer (at least for MK1). Another game that comes to mind Super Meat Boy, and I bet hundreds of others did the same.
And it got me thinking, maybe that's my problem, I just need an artist.
And I think the reason why I never thought of that is because of this idea that graphics don't matter.
"you don't need an artist. You don't need graphics. The most important thing is the gameplay."
What a load of shit.
A lot of people believe that because they got tired of polished AAA games with automatic and predictible gameplay.
People started parrotting this knee jerk of a conclusion since then.
It's dumb. Imagine if Infiminer, one of the games Minecraft was based on, which btw looks terrible, had all the same features Minecraft had.
I would still not touch that shit with a pole.
Graphics ARE important. Games are on the VISUAL medium.
That doesn't mean you're sucking Sony's dick on every AAA release or that every game should be made with UnreUnityCocksReloadedEngine.
Some level of visual craft is required for a game ro be considered such.
(btw, I think most of you guys here get this, not trying to pander, just that I want to make it clear that I'm not accusing this community of being guilty of this)
If a game looks bad (given, bad can be subjective), if it gives the impression that it wasn't seriously made, then you kinda lower your expectations.
People get hyped on games that look good, because it means that the game could be good. Games that look unoriginal or terrible won't get played, wether they're good or not. And I think it's a reasonable reaction.
How many times did I hear things like "Look at x video game from the 90s, the graphics are terrible but it's fun as hell".
That is an absurd statement. The level of production some NES games went through is insane. We're talking millions of dollars for games that today might look primitive.
The graphics weren't shit back then, and even today you could say that they are simpler but also of excellent craftsmanship.
I'm not into creating art, I hate it in fact because you can't quantify the success of produced art.
So, duh, find an artist. Ok, how? This is the part where I have no fucking idea how.
You start spamming shit like "I need an artist" online? I dunno, something for another post I guess.
I guess the most healthy thing I could do is making demos that might look like shit just to get experience so that when I get to find an artist, I have practice already.7
Ladies and gentleman, I've done it.
Remove your hacker game trophies from your wall.
That nasty bug you fixed a couple of nights ago? Meh.
Your top devRant post? You'll delete it after reading this.
Every awesome accomplishment you can think of: it all means shit now.
>> I have SUCCESSFULLY changed my business Microsoft account password into something I can remember AND Microsoft accepted it in under an hour of trying!!!!! <<
I want to say a big FUCK YOU to MICROSOFT for WASTING MY BLOODY TIME.
FUCK YOU for giving me a max of 16 characters. DASB&(*(&G*HH*& for telling me every time my password is 100% strength and then after every submit tell me I have to change it AGAIN because it should be harder to guess. WUT?! It was 16 characters including a (capital) letter, number and multiple special characters, WHAT ELSE DO YOU WANT FROM ME?! UNICODE EMOJI'S???!!! ALLOW ME TO USE MORE CHARACTERS SO I WILL MAKE IT HARDER TO GUESS IT, IT'S 2018 FFS.
I don't even understand why my new password is accepted compared to the other one, but fuck it I can access my account again.
Now I might have to find a new job before the company password policy kicks in again.
/me drops everything and walks out of the office to get wasted (not sure if celebrating or just really pissed off)9
FUCK ALL THOSE MONKEYS THAT WROTE ALL THE SHITTY CODE WHICH I'VE SPENT THE MAJORITY OF MY DAYS HAVING TO FIGURE OUT WHAT THE SHIT IT DOES AND WHY I CAN'T JUST BURN IT....
AND WHY THE FUCK DO BUSINESS USERS SEEM TO THINK THAT DEVELOPERS CAN UNDERSTAND ALL THEIR BUSINESS TALK...
IF I UNDERSTAND ALL OF WHAT YOU DO, YOU WILL BE OUT OF A JOB....
P.S. APPARENTLY ONE OF MY MEDS SIDE EFFECTS ARE INCREASED IRRATIBILTY. THE SLIGHTEST ANNOYANCES NOW PISS ME OFF...
SO APPARENTLY THAT MEANS I HAVE A FREE LICENSE TO BLOW UP N RANT ON THE JOB RIGHT?
TL;DR; windows XP + bat scripts + fascination about being able to make things yourself.
I was born and raised in a village. And the thing about living in a village is that you are free :) Among all the other freedoms you are also free to build your own solutions to various domestic problems, i.e. to build stuff. This is one of the things that fascinates me about living outside the city.
When I finally was old enough (and had the means to, i.e. a computer) to understand that programming is something that allows you to build your own solutions to computer problems, it got to me.
With win 3.1 I was still too fresh and too young. With win 95 I was more interested in playing with neighbours outdoors. With win 98 I was a bit too busy at school. But with win XP the time had come. I started writing automation solutions for windows administration using .bat scripts (.vbs was and still is somewhat repelling to me). I no longer needed to browse Russian forums and torrent sites to find a solution to a problem I had! That was amazing!!! [esp. when my Russian was very weak].
That was the time when I built my first sort-of-malware - a bat script downloading and installing Radmin server, uploading computer's IP and admin credentials to my FTP.
I loved it!
However, I'd stumbled upon may obstacles when writing with batch. I googled a lot and most of the solutions I found were in bash (something related to Linux, which was a spooky mystery to me back then). Eventually, I got my courage together and installed ubuntu. Boy was I sorry... Nothing was working. I was unable to even boot the thing! Not to mention the GUI...
Years later I tried again with ubuntu [7.10 I think.. or 7.04] on my Pavilion. Took me a looooot of attempts but I got there. I could finally boot it. A couple of weeks later I managed to even start the GUI! I could finally learn bash and enjoy the spectacular Compiz effects (that cube was amazing).
I got into bash and Linux for the next several years. And then I thought to myself - wait, I'm writing scripts that automate other programs. Wouldn't it be cool I I could write my own programs that did exactly what I wanted and did not need automation? It definitely would! I could write a program that would make sound work (meaning no more ALSA/PA headaches!), make graphics work on my hardware, make my USB audio card to be set to primary once connected and all the other amazing things! No more automation -- just a single program or all of that!
little did the naive me knew :)
I started with python. I didn't like that syntax from the beginning :/ those indentations...
Then I tried java. Bucky (thenewboston), who likes tuna sandwiches, on my phone all the free time I had. I didn't learn anything :/ Even tried some java 101 e-book. Nothing helped until I decided to write some simple project (nothing fancy - just some calculations for a friend who was studying architecture).
I loved it! It sounds weird, but I found Swing amazing too. With that layout manager where you have to manually position all the components :)
and then things happened and I quit my med studies and switched to programming. Passed my school exams I was missing to enter the IT college and started inhaling every bit of info about IT I could get my hands on (incl outside the college ofc).
A few more stepping stones, a few more irrelevant jobs to pay my bills in the city, and I got to where I am now.6
If you're making a game, dont start by thinking about your inventory system. Start by thinking about what you want your player to be able to DO, the cost of those things, and the constraints.
For example, ages of empires didnt have you worrying about unit equipment at all. every villager could do almost any job. while survival games, especially survival horror, like the recent RE remake, severly restrict inventory and stack sizes to make resource managenent more important.
Games like Fallout had list based inventories because lists are cheap, and it allowed a tighter interaction loop. players would loot. go into inventory. close container, onto the next container, keeping the player in the exploration loop longer. neoscav did the opposite *for effect* harkening back to diablo, but taken to the nth degree: *everything*, actions, combat, exploration, character design, all based on an inventory-style grid.
while games like rimworld and dwarf fortress have your inventory represented by zones where items are physically *stored* in stacks on the ground, extending the concept of base management to resource management through physical layout and build optimization.
its important to think about what kind of actions you want players to be able to do, and the kinds of challenges and constraints you want on them at each point of the game and each mechanic they engage in.
other examples, though terrible, include fortnite, where the limitations of competitive play had inventory limited to a resource system and a hotbar. while earlier battle royale and sandboxs games like rust and battleground induced tension by combining loot mechanics and grid inventories with the constant danger of competing players, allowing them to have richer inventory systems at the risk of frusterating players who frequently died while managing their inventory. meanwhile in overwatch, notice how the HUD changes to best represent the abilities of each character.
all in all it is better to stop thinking of inventory systems as a means to an end, and instead as the end representation of desired mechanics, or artificially selected representations for particular effects.
this applies likewise to ui and ux in general. because the design of interface is fundementally about the design of *interactions*, and what you want to enable a user or customer to *do* will ultimately drive those interactions.8
This day I have received the most glorious news in e-pistolary form. For some years, I was suffering in support of a client who was, well, insufferable. My presence there paralleled the divine comedy in both essence and fact.
I opened the missive, expecting another plea to bail them out of whatever clusterfuck they found themselves in. Instead, what I found was something truly magical.
I hope this finds you well. I'm not sure if you remember a few years back, we were trying to decide between IBM Cloud and AWS. Well, after years of battling FF*, we're finally moving ahead with AWS. He failed one too many times to deliver anything visibly. After you left, there was no one left he could use to steal credit, ideas, and work.
FF is still pushing to have them use IBM cloud as a "warm backup" in the event "AWS fails." We will see where that goes.
I figured you'd like to know; you were the void in the wilderness for a long time. I don't want to think about how much time we could have saved if we had just listened.
This event represents a personal victory, albeit belated, over a few peoples' absurd amount of privilege. Towards the end, I was vicious about my contestation to the insanity of adopting a desperate hedge attempt-as-cloud offering from a failing company. Some examples:
// cloud 'strategy meeting'
Moi: What cloud platform are we looking at using?
FF: We're looking at IBM cloud and AWS as a second.
Moi: Why is that? I understand you're obligated to rep your offering first, but that decision doesn't seem to have the customer's best interest at heart.
FF: IBM cloud is a market leader; AWS isn't as good.
Moi: I see. I mean, that's the tech equivalent of the company's fleet management considering monkeys on tricycles as a strong competitor to service trucks, but I get what you mean.
// steering meeting
Director: Who can we look to as an example? Who is currently using the IBM cloud?
Moi: No one; they account for a single-digit portion of the actual cloud market. Their long game to sell you a "Hybrid Cloud," which means put some front end payload in a CDN, and buy n-frame units of IBM z servers for the DC with IBM gateway appliances acting as connective tissue. So it's not the cloud at all, really.
Director: How does it compare in cost?
Moi: It's generally 40% more expensive than other clouds, and it only goes higher as you option their software.
Director: What about Watson? I hear Watson is good?
Moi: It's a brand name. Most of the "Watson" product is just a facade on top of FOSS products like Spark, Hadoop, Elasticsearch, etc.
Director: Those were words. They sounded good. FF say it's good tho so we'll believe him because we're from the same city.
Moi: *deletes Director from LinkedIn*
Moral of the story: Never trust a vendor that only recommends their products.
*FF = FatFuck - an embarrassingly rotund individual whose girth is roughly equivalent to his height. He shit his way into an IBM architect position in his mid-20s purely due to winning the visa lottery. He had fake hair glued to his head for his wedding to hide his male pattern baldness; his arrange-married wife undoubtedly cries herself to sleep after sex.
**PeeEm - the then project manager, now portfolio manager of some satellite projects. An overall decent human being, capable.10
I have a couple of thoughts about social justice controversies from these last years.
I think it's hard to have a good opinion about these events for several reasons.
One reason is that finding good information in 2019 is very hard.
Revenue based sites (thus unneutral) dominate the search results. You search about something and you find thousands of sites basically saying the same thing (because they copy each other).
That's why the existence of a free and open search engine is so important, so it's easier to find neutral hence good information on which to base your opinions, but they are prohibitively big for small groups to build.
Another reason is that controversies generate shock and shock curtails rational thinking. Maybe that's how the primitive brain works?
I'm not much of a scholar to feel confident to say that, but it's so recurrent that it's not too much of a wild guess.
When a controversy happens, a natural reaction is to pick a side. This means that:
a) we assume that there are only 2 sides, and
b) we must pick one of them
So, maybe the human is a bad politician by nature?
Also, because of the shock controversies generate, peaceful dialogue is very rare.
I have yet to see peaceful dialogue online about what patriarchy means to feminists and a lot of other terms they use.
I don't care much about feminists that vandalize or interrupt talks (yelling over someone else is abuse in my opinion).
But for the rest of them, I think discussing their ideas would be good.
I say this because most feminist discourse I see online is not open. Or maybe there are such instances but the web is so big that it's hard to find such instances.
I think some part of the modern feminist doctrine is bullshit, and some part is true.
I for one hate when some men I know in life expect their wives to be their cooks+cleaners (unless they want to do that, willingly). Personally, I'd encourage my wife to get a job (rightfully so, not just to meet some minority quota in some company).
I don't mind either calling a trans person the pronoun she wants.
But other ideas are awful, like the idea that meritocracy is patriarchy, so you need to force minorities to meet a proportionate quota. That's terrible reasoning.
Or the excessive self appreciation culture, like saying to yourself "you are pretty, you are beautiful, you are perfect". I think that grows arrogance and black-or-white thinking.
And some other ideas as well.
I guess the same you can say about any doctrine with different degrees. Some part is bullshit, some part isn't.
Some right wing people hate everyone who isn't white by default, but some want to have more immigration control.
I sure don't like the experiment of separating children from families like the current us govt did, but I wouldn't be happy either to know that by '99 50% of gangs members in the us were hispanic.
With this, I'm not going to say "embrace everyone's ideas" like an idiot. I hate when people do that. It's a stupid and weak reaction to radicalism.
In fact I think the way you fight radicalism and bad doctrines is that you listen to them and maintain good dialogue and counterargue in a respectful but insightful manner.
Making snide remarks, insulting or trolling won't change anyone's mind. That is just throwing fire to the fire.
In fact, when someone gets harassed because of something they believe in, usually it results in even more adherence to their beliefs, because of the usual assumption that success or goodness is full of strife.
So by telling a "sjw" or kkk member that they are idiots over twitter, you are in fact making them stronger believers in their doctrine.
Think of Daryl Davis, a black guy that made 200 members leave the kkk. How? He didn't tell them they were assholes, he somehow made friends with them.
I feel bad now because I've been trolling new devrant users a lot because of how they worsen the quality of the site, but maybe I should tell them that they are ruining the site somehow in a nice way and maybe they'll listen? I dunno...24
"There's more to it"
This is something that has been bugging me for a long time now, so <rant>.
Yesterday in one of my chats in Telegram I had a question from someone wanting to make their laptop completely bulletproof privacy respecting, yada yada.. down to the MAC address being randomized. Now I am a networking guy.. or at least I like to think I am.
So I told him, routers must block any MAC addresses from leaking out. So the MAC address is only relevant inside of the network you're in. IPv6 changes this and there is network discovery involved with fandroids and cryphones where WiFi remains turned on as you leave the house (price of convenience amirite?) - but I'll get back to that later.
Now for a laptop MAC address randomization isn't exactly relevant yet I'd say.. at least in something other than Windows where your privacy is right out the window anyway. MAC randomization while Nadella does the whole assfuck, sign me up! /s
So let's assume Linux. No MAC randomization, not necessary, privacy respecting nonetheless. MAC addresses do not leak outside of the network in traditional IPv4 networking. So what would you be worried about inside the network? A hacker inside Starbucks? This is the question I asked him, and argued that if you don't trust the network (and with a public hotspot I personally don't) you shouldn't connect to it in the first place. And since I recall MAC randomization being discussed on the ISC's dhcp-users mailing list a few months ago (http://isc-dhcp-users.2343191.n4.nabble.com/...), I linked that in as well. These are the hardcore networking guys, on the forum of one of the granddaddies of the internet. They make BIND which pretty much everyone uses. It's the de facto standard DNS server out there.
The reply to all of this was simply to the "don't connect to it if you don't trust it" - I guess that's all the privacy nut could argue with. And here we get to the topic of this rant. The almighty rebuttal "there's more to it than that!1! HTTPS doesn't require trust anymore!1!"
... An encrypted connection to a website meaning that you could connect to just about any hostile network. Are you fucking retarded? Ever heard of SSL stripping? Yeah HSTS solves that but only a handful of websites use it and it doesn't scale up properly, since it's pretty much a hardcoded list in web browsers. And you know what? Yes "there's more to it"! There's more to networking than just web browsing. There's 65 THOUSAND ports available on both TCP and UDP, and there you go narrow your understanding of networking to just 2 of them - 80 and 443. Yes there's a lot more to it. But not exactly the kind of thing you're arguing about.
Enjoy your cheap-ass Xiaomeme phone where the "phone" part means phoning home to China, and raging about the Google apps on there. Then try to solve problems that aren't actually problems and pretty vital network components, just because it's an identifier.
P.S. I do care a lot about privacy. My web and mail servers for example do not know where my visitors are coming from. All they see is some reverse proxies that they think is the whole internet. So yes I care about my own and others' privacy. But you know.. I'm old-fashioned. I like to solve problems with actual solutions.11
Guy sees me on my laptop and says "is that Linux?". I say yes then he says he is into computer "stuff and can hack anything". Not having a clue what that means I replied with a "awesome".
I don't have really any friends that are into "computers", so I decided to play ball.
I asked, "Are you into coding?.. he says, "Yes". Then I ask, " What languages?" He says, " Just what ever, anything really, it depends on what I am doing."
At this point I understand what is going on but it is so awkward. He continues.. "Recently I used.. what's it called abd or adb, you know I like rooted my phone"...
And let's talk about something else....
Why do people feel the need to lie or whatever you might call what happened. It might be different I think if he wasn't about 40.
I feel like this is a pretty common story2
Every time I tell a more senior dev I need help, they tell me to try the obvious things, I tell them I tried those things already, and they think I must have just done it wrong. So they spend an hour explaining to me how to do something I literally just did, and then more time trying the exact same things I just tried. Nobody wins.
Except for me when I find the correct solution while they’re re-implementing the failed solutions because nobody trusted me.
Sadly, this happens all the time. “Did you try a and b?” “Yeah, no luck.” “Okay, so when you try a, you have to remember to call c and d. Let me explain...”
So much wasted time. But the silver lining is in getting to be the one who found the solution (until they wonder ‘why’d she even come to me anyway if she knew the answer?’ ... 🙄) Because I trusted you to know what “team” means, and it’s not too late to learn ¯\_(ツ)_/¯5
Follow-up to my previous story: https://devrant.com/rants/1969484/...
If this seems to long to read, skip to the parts that interest you.
~ Background ~
Maybe you know TeamSpeak, it's basically a program to talk with other people on servers. In TeamSpeak you can generate identities, every identity has a security level. On your server you can set a minimum security level you need to connect. Upgrading the security level takes longer as the level goes up.
~ Technical background ~
The security level is computed by doing this:
SHA1(public_key + offset)
Where public_key is your public key in Base64 and offset is an 8 Byte unsigned long. Offset is incremented and the whole thing is hashed again. The security level comes from the amount of Zero-Bits at the beginning of the resulting hash.
My plan was to use my GPU to do this, because I heared GPUs are good at hashing. And now, I got it to work.
~ How I did it ~
I am using a start offset of 0, create 255 Threads on my GPU (apparently more are not possible) and let them compute those hashes. Then I increment the offset in every thread by 255. The GPU also does the job of counting the Zero-Bits, when there are more than 30 Zero-Bits I print the amount plus the offset to the console.
~ The speed ~
Well, speed was the reason I started this. It's faster than my CPU for sure. It takes about 2 minutes and 40 seconds to compute 2.55 Billion hashes which comes down to ~16 Million hashes per second.
Is this speed an expected result, is it slow or fast? I don't know, but for my needs, it is fucking fast!
~ What I learned from this ~
I come from a Java background and just recently started C/C++/C#. Which means this was a pretty hard challenge, since OpenCL uses C99 (I think?). CUDA sadly didn't work on my machine because I have an unsupported GPU (NVIDIA GeForce GTX 1050 Ti). I learned not to execute an endless loop on my GPU, and so much more about C in general. Though it was small, it was an amazing project.1
So i just had an interesting conversation.
View source images in comments
So some background. I used to do a lot of Minecraft development and server configuration. And Minecraft being made of mostly 12-year-olds they really don't pay very well. So I moved on from Minecraft but someone reached out for me to do their configuration for their server. (this was about a month ago) and I quoted them 40/hr because that's what I charge for my web dev work. So he promptly declined and I thought that was that. But tonight he messaged me and found a 5 month old post saying how I was looking to do free development work in order to get experience. And here is how the converstion when.
(His name is "Candy")
Trying to take advantage of me with your bullshit $40/hour claims
Which is outright laughable
”I am looking for a network to stay long-term with and help/see it grow into a bigger server. (I would expect pay later down the road if we work together on an ongoing basis)”
Quoting your MC-Market post.
What do you have to say for yourself? Trying to take advantage of people?
Going to say something else completely delusional or own up to the fact that you were trying to take advantage of me?
I already knew you were, but now I have the hard evidence.
As I am not a stupid person.
Not only did your friend lie, but you tried to take advantage of me, thinking I was stupid enough to fall for your $40/hour bullshit for basic configuration work. MineSaga charges $30.00 an hour on the high. Don’t even try to do the same shit you did to me to anyone else. It won’t work.
Me:I was interested in doing plugin development and learning so I offered my services for free so I could learn in a more real environment. I no longer do minecraft plugins rather I am a web developer and my rate is $40/hr I am good at configuration which is why i contacted you but I am not going to lower my rate because it is "simpler" work. Just like how you can higher a prostitute to wash your car but it would be cheaper to get the kid from around the block to do it. Also not sure what your end goal is here. I gave you my rate and you didn't agree with it. So you should just move on. Plus this is the minecraft world let me know when you get to the real world so you you can pay in big boy money.
So your configuration work for minecraft is $40/h as well?
did you not read my message?
"I am not going to lower my rate because it is "simpler" work."
Who were your most recent clients?
i'm not going to give you that information
Because you know you are lying to me with your crazy rates, and if you aren't, that means you have near to no clients.
Yet another lie.
keep telling yourself that buddy
Good luck getting any more clients.
I get more clients all the time
They just are not in your realm of your minecraft imagination where you can pay a developer 20$/hr
I just strongly disagree with the fact that you are charging $40/hour for configurative work
But why even contact me? Did you really think trying to "Call me out" was going to have me lower my rates or something.
Just get over it
I haven't called you out and overcharging like that to others in the minecraft realm for a significant gain in money for work that is not worth nearly that amount is absolutely delusional.
I would recommend you stop making up false assumptions
Me: What ever you say
I left it at that. There was some more stuff but it was not that interesting so i left it out6
It has taught me to accept that I am frequently wrong. Not just when faced with code but with people too.
All the years of "It can't possibly be MY code that's wrong" which of course always turns into "Well, I guess it was my code..." Had helped me think critically in relationships, politics, and many other areas of my life.
Programming had actually heavily influenced my behavior and I would say it is largely for the better.
However, one negative effect it has had on me is that I am less of an optimist. Code is very "cause and effect". This means a lot of my life is "no surprises" and "you get what you give"
So I often feel like the most likely outcome is probably just the one that's gonna happen. There are no surprises, no miracles. Life is cause and effect.1
Oh boy, this is gonna be good:
TL;DR: Digital bailiffs are vulnerable as fuck
So, apparently some debt has come back haunting me, it's a somewhat hefty clai and for the average employee this means a lot, it means a lot to me as well but currently things are looking better so i can pay it jsut like that. However, and this is where it's gonna get good:
The Bailiff sent their first contact by mail, on my company address instead of my personal one (its's important since the debt is on a personal record, not company's) but okay, whatever. So they send me a copy of their court appeal, claiming that "according to our data, you are debtor of this debt". with a URL to their portal with a USERNAME and a PASSWORD in cleartext to the message.
Okay, i thought we were passed sending creds in plaintext to people and use tokenized URL's for initiating a login (siilar to email verification links) but okay! Let's pretend we're a dumbfuck average joe sweating already from the bailiff claims and sweating already by attempting to use the computer for something useful instead of just social media junk, vidya and porn.
So i click on the link (of course with noscript and network graph enabled and general security precautions) and UHOH, already a first red flag: The link redirects to a plain http site with NOT username and password: But other fields called OGM and dossiernumer AND it requires you to fill in your age???
Filling in the received username and password obviously does not work and when inspecting the page... oh boy!
I ask for the seemingly "new" credentials and i receive new credentials again, no tokenized URL. okay.
Now Once i log in i get a horrible looking screen still made in the 90's or early 2000's which just contains: the claimaint, a pie chart in big red for amount unpaid, a box which allows you to write an - i suspect unsanitized - text block input field and... NO DATA! The bailiff STILL cannot show what the documents are as evidence for the claim!
Now we stop being the pretending dumbassery and inspect what's going on: A 'customer portal' that does not redirect to a secure webpage, credentials in plaintext and not even working, and the portal seems to have various calls to various domains i hardly seem to think they can be associated with bailiff operations, but more marketing and such... The portal does not show any of the - required by law - data supporting the claim, and it contains nothing in the user interface showing as such.
The portal is being developed by some company claiming to be "specialized in bailiff software" and oh boy oh boy..they're fucked because...
The GDPR requirements.. .they comply to none of them. And there is no way to request support nor to file a complaint nor to request access to the actual data. No DPO, no dedicated email addresses, nothing.
But this is really the ham: The amount on their portal as claimed debt is completely different from the one they came for today, for the sae benefactor! In Belgium, this is considered illegal and is reason enough to completely make the claim void. the siple reason is that it's unjust for the debtor to assess which amount he has to pay, and obviously bailiffs want to make the people pay the highest amount.
So, i sent the bailiff a business proposal to hire me as an expert to tackle these issues and even sent him a commercial bonus of a reduction of my consultancy fees with the amount of the bailiff claim! Not being sneery or angry, but a polite constructive proposal (which will be entirely to my benefit)
So, basically what i want to say is, when life gives you lemons, use your brain and start making lemonade, and with the rest create fertilizer and whatnot and sent it to the lemonthrower, and make him drink it and tell to you it was "yummy yummy i got my own lemons in my tummy"
So, instead of ranting and being angry and such... i simply sent an email to the bailiff, pointing out various issues (the ones6
Is it just me, or is the rants longing for stickers and balls (sounds vaguely euphemistic) becoming just a bit too common?
I love some good stickers as much as the next guy, but wouldn't it be more fun to have them for something more, well, rant-y?
But by all means, keep ranting about what you think about, I love all of it.3
I rarely tell this story because it's hard to believe and would show me in a bad light if people don't believe its details. I know there have been foolish moves from my part, and more stuff should have been agreed to in writing, and I did step into a legal grey area. However I am pleased with what I did and how it all turned out, and this is as close to the truth as possible without needing to explain too many details.
I was once a team lead in an outsourcing company. We had a flexible payment plan depending on results. That helped me motivate myself and my team. Things worked great.
But then the boss started acting like shit:
1. Flexible payment means minimum, right?
2. Promises are made to be broken, as long as your employees have hope and work overtime for a whole month just to finish an important project before schedule, right?
3. Who needs a good, comfortable, SAFE work environment when you can save 30$ on not buying a new crappy chair in place of the old broken crappy chair, if it can be maintained standing by just a bit of duct tape and careful balancing on it? It's not like that developer who earns 30$ per hour has anything else to think about than balancing on a broken chair, right?
I'm a very calm person at work. I never ever raised my voice at anyone for 10 years of my career. Except this situation. I pulled the boss out of the office so his secretary wouldn't hear what I had to say. I threw this everything into his face.
A guy from sales got out of the office to go to the bathroom, and when he heard me, he carefully snuck back into the office (I didn't see him. He told me this over a beer after he left).
Of course I quit on the spot, convinced most of my team members to leave (wasn't hard, I just had to offer a secure plan, which I did), and helped my team members to get good positions elsewhere, and assisted others in starting their own business, by stealing customers from this company (the asshole did not foresee this when he prepared the labour contracts), after he accused me of plagiarism (that I stole code from somewhere else) and used that excuse to not pay me what we agreed upon.
I didn't want litigation. I just used karma, while remaining in the legal realm.
Within a month after this, more than half of his company was gone, and he was left with only a fraction of the revenue he was making before, since the only ones left were people that did not produce value (sales that had nothing to sell, accounting that had nothing to account, etc.), and just one person maintaining one remaining contract that was bringing barely enough money to sustain half of these people.
Now I want to congratulate you for actually finishing reading this :)1
So about 3 weeks ago I was laid off from my dream job due to corporate bullshit. From the feedback received since then it is clear that the company made a mistake hiring a brand new React dev while they really needed an experienced one. Because the consultants who were supposed to be weren't. And the other in-house front end dev was an elitist asshole. And I never received proper feedback until it was too late. Actually I still don't have proper feedback save for some vague stuff which really sounds like the kind of feedback you'd give someone in the middle of their learning process. They even said eventually given more time I could have made it. But alas they felt they had to make a call in the best interest of the company.
Things moved fast since then, I took a week to recover and then I spent time updating my resume before getting back in touch with the recruiter who got me my last job. Great guy and he was happy to help me again. Applied to some positions, got some replies, first in person interview I go to they are immediately willing to take me on.
So now I'm supposed to start tomorrow but somehow I'm having my doubts. The company isn't an IT company but rather a fashion company. They believe in developing in house tools because past attempts with external companies resulted in them trying to push their vision through. Knowing who they worked with I agree, they tried to oversell all the time. But after talking with their developers I noticed they are behind on their knowledge. But so am I. So there was no tech interview which means I am getting an easy way in. And if they honour their word I'll be signing tomorrow for around my old wages.
So you'd think that sounds good right? And yet I'm worried it's going to be another shit show working on software without proper analysis or best practices. I mean the devs aren't total idiots, they are mediors like me and I think their heart is in the right place. They want to develop a good project but it will be just us 3 making a modern .net wpf application with the same functionality of the old Access based system currently in use. I was urged by the boss to draw on my experience and I think he wants me to help teach them too. But I'm painfully aware for my decade since graduating I'm a less than average .net dev who struggles with theory and never worked a job where I had someone more experienced to teach me. I coasted most of the time in underpaid jobs due to various reasons. But I'd always get mad over shitty code and practices. Which I realize is hypocritical for someone who couldn't explain what a singleton class is or who still fails at separation of concerns.
So yeah my question for the hivemind is what advice would you give a dev like me? I honestly dislike how poor I perform but it often feels like an insurmountable climb, and being over 30 makes it even more depressing. On the other hand I know I should feel blessed to find a workplace who seems to genuinely believe that people grow and develop and wishes to support me in this. Part of me thinks I should just go in, relax, but also learn till I'm there where I want to be and see if these people are open to improving with me. But part of me also feels I'm rushing into this, picking the first best offer, and it sure feels like a step backwards somehow. And that then makes me feel like an ugly ungrateful person who deserves her bad luck because she expects of others what she can't even do herself :(4
Saw this sent into a Discord chat today:
"Warning, look out for a Discord user by the name of "shaian" with the tag #2974. He is going around sending friend requests to random Discord users, and those who accept his friend requests will have their accounts DDoSed and their groups exposed with the members inside it becoming a victim as well. Spread the word and send this to as many discord servers as you can. If you see this user, DO NOT accept his friend request and immediately block him. Discord is currently working on it. SEND THIS TO ALL THE SERVERS YOU ARE IN. This is IMPORTANT: Do not accept a friend request from shaian#2974. He is a hacker.
Tell everyone on your friends list because if somebody on your list adds one of them, they'll be on your list too. They will figure out your personal computer's IP and address, so copy & paste this message where ever you can. He is going around sending friend requests to random discord users, and those who accept his requests will have their accounts and their IP Addresses revealed to him. Spread the word and send this to as many discord servers as you can. If you see this user, DO NOT accept his friend request and immediately block him. Saw this somewhere"
I was so angry I typed up an entire feature-length rant about it (just wanted to share my anger):
"1. Unless they have access to Discord data centres or third-party data centres storing Discord user information I doubt they can obtain the IP just by sending friend requests.
2. Judging by the wording, for example, 'copy & paste this message where ever you can' and 'Spread the word and send this to as many discord servers as you can. If you see this user, DO NOT accept his friend request and immediately block him.' this is most likely BS, prob just someone pissed off at that user and is trying to ruin their reputation etc.. Sentences equivalent to 'spread the word' are literally everywhere in this wall of text.
3. So what if you block the user? You don't even have their user ID, they can change their username and discrim if they want. Also, are you assuming they won't create any alts?
4. Accounts DDoSed? Does the creator of this wall of text even understand what that means? Wouldn't it be more likely that 'shaian' will be DDoSing your computer rather than your Discord account? How would the account even be DDoSed? Does that mean DDoSing Discord's servers themselves?
5. If 'shaian' really had access to Discord's information, they wouldn't need to send friend requests in order to 'DDoS accounts'. Why whould they need to friend you? It doesn't make sense. If they already had access to Discord user IP addresses, they won't even have to interact with the users themselves. Although you could argue that they are trolling and want to get to know the victim first or smth, that would just be inefficient and pointless. If they were DDoSing lots of users it would be a waste of time and resources.
6. The phrase 'Saw this somewhere' at the end just makes it worse. There is absolutely no proof/evidence of any kind provided, let along witnesses.
How do you expect me to believe this copypasta BS scam? This is like that 'Discord will be shutting down' scam a while back.
Why do people even believe this? Do you just blindly follow what others are doing and without thinking, copy and paste random walls of text?
Spreading this false information is pointless and harmful. It only provides benefits to whoever started this whole thing, trying to bring down whoever 'shaian' is.
I don't think people who copy & paste this sort of stuff are ready to use the internet yet.
Would you really believe everything people on the internet tell you?
You would probably say 'no'.
Then why copy & paste this? Do you have a reason?
Or is it 'just because of 'spread the word''?
I'm just sick of seeing people reposting this sort of stuff
People who send this are probably like the people who click 'Yes' to allow an app to make changes in the User Account Control window without reading the information about the publisher's certificate, or the people who click 'Agree' without actually reading the terms and conditions."8
Hey guys, I have a serious question for you: How do you define science?
And yes this is going to be a long Rant. This topic really pisses me off.
A bit of context first. I come from a "humanities" background. I study history and dude, I love it. The problem is that even though we fucking pull our brains out studying historical phenomena with a fucking ton of conceptual tools, our work is mostly seen as literature to entertain the elderly during their lonely evenings. But that's not really the point of this rant.
My fucking problem is that while we try to do some serious work; actual work that could help society for real, it all goes into that magical fucking kingdom called "humanities". HOW THE FUCK DO THEY DARE TO CALL SOMETHING "HUMANITIES". IT'S A FUCKING HISTORICAL TERM THAT MEANS "TO FULFILL MEN IN ALL IT'S ASPECTS", AND NOW THEY'VE REPURPOSED IT, MAKING IT CONTAIN ANY STUDY THAT ISN'T "EMPIRICAL", "OBJECTIVE", ADD ANY FUCKING SCIENTIFIC DELUSIONARY TERM YOU CAN THINK OF.
And don't get me started on "objectivity". Oh boy, your fucking objectivity is hollow as a kid's balloon. There is no such thing as a objective study, even when it applies your "rational" "godly" scientific method. Some guys follow that shit as if it was a fucking religion. I do understand it's useful and all that, but in the end it's just a tool, you can't fucking define "science" by it's tools.
"""Q: What is carpintery?
A: Well, it's hammers, nails and wood. Yep. Hammers, nails and wood."""
THE SCIENTIFIC METHOD WAS FUCKING INVENTED DURING THE XVIII CENTURY, WHAT THE FUCK DO YOU THINK WAS GALLILEI BEFORE THAT? "HUMANITIES"?
Why do I say objectivity isn't posible? Well, guess what? YOU ARE FUCKING HUMAN. Every thing you know is full of preconceptions and fucking cultural subjectivities invented to understand the world. And it's ok, becouse if you understand your own subjectivity, at least you can see yourself in a critical sense, and at least "tend" to objectivity, in the same way functions tend to infinity.
And here comes the best part: people studying "cs" in my university pass most of the time studying a ton of shit that isn't really science, but is taken as scientific becouse it is related to "science". These guys spend entire semesters just learning programming fundational stuff that in my opinion isn't really science, it's just subjective conceptual constructs built to make the coding process better. They only have TWO fucking classes on discrete mathematics and another 3 or 4 in actual scientific fields related to computing. THESE GUYS AREN'T FUCKING BEING TAUGHT TO BE COMPUTER SCIENTISTS; THEY ARE TEACHING THEM TO BE PROGRAMMERS. THERE'S A HUGE DIFFERENCE BETWEEN CS AND PROGRAMMING AND THAT IS THE WORD SCIENCE. And yes, I'm being drastic on the definition of science on purpose becouse guess fucking what? I'M PISSED OFF.
"Hey, what are you doing?"
"Just doing science with scrum and agile development."
I understand most of you guys would think of science as "the application of the scientific method", "Knowledge by experimentation and peer-review", "anything techy". Guys, science is a lot broather than that. I define it as "the search for truth", mainly becouse that's what we are all doing, and what humans have been doing to gain knowledge through the ages. It doesn't matter what field of truth you are seeking as long as you do it seriously and with fundaments. I don't fucking care if you can't be objective: that's impossible. Just acknowledge it and continue investigating accordingly.
I believe during the last centuries the concept of science has been deformed by the popular rise of both natural and applied sciences. And I love the fact that these science fields have been growing so much all this time, but for fucks sake don't leave every other science (science as I define it) behind. Governments and corporations make huge mistakes becouse they don't treat history, politics and other sciences seriously. Yes, I called history a "science", fuck you.
And yes, by my definition programming is not a science. I don't know what most of you think programming is, but for me it's a discipline that builds stuff, similar to carpintery or blacksmithing. Now if you are pushing the limits, seeking ways to make computing go further, then that's science. The guys that are figuring out AI are scientists, the guys that are using it to detect hotdogs aren't - unless they are the same person- deal with it. I guess a lot of you guys are with me on this point.
In the end, we are all artisans building abstract tools by giving orders to a machine.
I still have some characters left, so I want to thank the community as a whole for letting me vent my inner rage. I don't have much ways to express myself on these matters, so for me DevRant is a bless.8
Get ready for a awesome conspiracy theory/ WhatsApp forward :D i like how people are coming with new stuff every minute of their boredom . Makes you ponder:
How to dominate the world quickly?
THE GREAT CHINESE STAGE
1. Create a virus and the antidote.
2. Spread the virus.
3. A demonstration of efficiency, building hospitals in a few days. After all, you were already prepared, with the projects, ordering the equipment, hiring the labor, the water and sewage network, the prefabricated building materials and stocked in an impressive volume.
4. Cause chaos in the world, starting with Europe.
5. Quickly plaster the economy of dozens of countries.
6. Stop production lines in factories in other countries.
7. Cause stock markets to fall and buy companies at a bargain price.
8. Quickly control the epidemic in your country. After all, you were already prepared.
9. Lower the price of commodities, including the price of oil you buy on a large scale.
10. Get back to producing quickly while the world is at a standstill. Buy what you negotiated cheaply in the crisis and sell more expensive what is lacking in countries that have paralyzed their industries.
After all, you read more Confucius than Karl Marx.
PS: Before laughing, read the book by Chinese colonels Qiao Liang and Wang Xiangsui, from 1999, “Unrestricted Warfare: China’s master plan to destroy America”, on Amazon, then we talk. It's all there.
Just Think about this...
How come Russia & North Korea are totally free of Covid- 19? Because they are staunch ally of China. Not a single case reported from this 2 countries. On the other hand South Korea / United Kingdom / Italy / Spain and Asia are severely hit. How come Wuhan is suddenly free from the deadly virus?
China will say that their drastic initial measures they took was very stern and Wuhan was locked down to contain the spread to other areas. I am sure they are using the Anti dode of the virus.
Why Beijing was not hit? Why only Wuhan? Kind of interesting to ponder upon.. right? Well ..Wuhan is open for business now. America and all the above mentioned countries are devastated financially. Soon American economy will collapse as planned by China. China knows it CANNOT defeat America militarily as USA is at present
THE MOST POWERFUL country in the world. So use the virus...to cripple the economy and paralyse the nation and its Defense capabilities. I'm sure Nancy Pelosi got a part in this. . to topple Trump. Lately President Trump was always telling of how GREAT American economy was improving in all fronts. The only way to destroy his vision of making AMERICA GREAT AGAIN is to create an economic havoc. Nancy Pelosi was unable to bring down Trump thru impeachment. ....so work along with China to destroy Trump by releasing a virus. Wuhan,s epidemic was a showcase. At the peak of the virus epidemic. ..
China's President Xi Jinping...just wore a simple RM1 facemask to visit those effected areas. As President he should be covered from head to toe.....but it was not the case. He was already injected to resist any harm from the virus....that means a cure was already in place before the virus was released.
Some may ask....Bill Gates already predicted the outbreak in 2015...so the chinese agenda cannot be true. The answer is. ..YES...Bill Gates did predict. .but that prediction is based on a genuine virus outbreak. Now China is also telling that the virus was predicted well in advance. ....so that its agenda would play along well to match that prediction. China,s vision is to control the World economy by buying up stocks now from countries facing the brink of severe ECONOMIC COLLAPSE. Later China will announce that their Medical Researchers have found a cure to destroy the virus. Now China have other countries stocks in their arsenal and these countries will soon be slave to their master...CHINA.
Just Think about it ...
The Doctor Who declared this virus was also Silenced by the Chinese Authorities...18
Inspired by @NoMad. My philosophy is that technology is a means to and ends. We’re a tool oriented species. As it relates to software and hardware, they should be your means to achieve your ends without you needing to think. Think of riding a bicycle or driving a car. You aren’t particularly conscious of them - you just adjust input based on heuristics and reflex - while your doing the activity.
For a long time Software has been horrendously bad at this. There is almost always some setup involved; you need to front-load a plan to get to your ends. Funny enough we’re in the good days now. In the early days of GUI you did have to switch modes to achieve different things until input peripherals got better.
I’ve been using windows from 95 and to this day, though it’s gotten better it’s not trivial to setup an all in one printer and scan a document - just yesterday I had to walk my mother through it and she’s somewhat proficient. Also when things break it’s usually nightmare to fix, which is why fresh installing it periodically is s meme to this day. MS still goes to great lengths with their UI so that most people can still get most of their daily stuff done without a manual.
I started Linux in University when I was offered an intro course on the shell. I’ve been using it professionally ever since. While it’s good at making you feel powerful, it requires intricate knowledge to achieve most things. Things almost never go smoothly no matter how much practice you have, especially if you need to compile tools from source. It also has very little in the ways of safe guards to prevent you from hurting yourself. Sure you might be able to fix it if you press harder but it’s less stress to just fresh install. There is also nothing, NOTHING more frustrating than following documentation to the T and it just doesn’t work! It is my day job to help companies with exactly this. Can’t really give an honest impression of the GUI ux as the distros have varying schools of thoughts with their desktop environments. Even The popular one Ubuntu did weird things for a while. In my humble opinion, *nix is better at powering the internet than being a home computer your grandma can use.
Now after being in the thick of things, priorities change and you really just want to get things done. In 2015 I made the choice to go Mac. It has been one of my more interesting experiences. Honestly, I wish more distros would adopt its philosophy. Elementary only adopted the dock. It’s just so intuitive. How do you install an application? You tap the installer, a box will pop up then you drag the icon to the application folder (in the same box) boom you are done. No setup wizards. How to uninstall? Drag icon from app folder to trash can. Boom done. How to open your app? Tap launch pad and you see all your apps alphabetically just click the one you want. You can keep your frequent ones on the dock. Settings is just another app in launchpad and everything is well labeled. You can even use your printers scanner without digging through menus. You might have issues with finder if your used to windows though and the approach to maximizing and minimizing windows will also get you for a while.
When my Galaxy 4 died I gave iPhone a chance with the SE. I can tell you that for most use cases, there is no discernible difference between iOS and modern android outside of a few fringe features. What struck me though was the power of an ecosystem. My Mac and iPhone just work well together. If they are on the same network they just sync in the background - you need to opt in. My internet went down, my iMac saw that my iPhone had 4g and gave me the option to connect. One click your up. Similar process with s droid would be multi step. You have airdrop which just allows you to send files to another Apple device near you with a tap without you even caring what mechanism it’s using. After google bricked my onHub router I opted to get Apples airport series. They are mostly interchangeable and your Mac and iOS device have a native way to configure it without you needing to mess with connecting to it yourself and blah. Setup WiFi on one device, all your other Apple devices have it. Lots of other cool stuff happen as you add more Apple devices. My wife now as a MacBook, an IPad s d the IPhone 8. She’s been windows android her life but the transition has been sublime. With family sharing any software purchase works for all of us, and not just apples stuff like iCloud and music, everything.
Hate Apple all you want but they get the core tenet that technology should just work without you thinking. That’s why they are the most valued company in the world14
So first of all merry delayed Xmas and of course wishing you all a happy new year.
I always loved designing and coding, yes I actually like it, I must be absolutely mental or something.. I finally after pushing myself through hours upon hours of courses, finishing most within 15% of the allotted time, and doing more then was requested, I finally found a job, related to front-end development. You might think "Gee; good for you buddy, you filthy commoner.." Well; it didn't last all too long, I basically after nailing the interview process got my first day there within a few days, now I am absolutely stoked and my nerves are shot, plus the 4 cups of coffee aren't helping. I literally was so nervous to do well on my first day, that I slept for only one hour, literally one bloody hour.
I get into the office where I am greeted by an amazing laptop, I mean high-end gaming 360 no-scope all over the place gaming. I sit down and start on getting all my tools ready to go (they let us use whatever IDE we wanted, which I thought was amazing) after getting my IDE and the plugins and all the emails/Slack etc setup, I then get told to get a Dropbox account. I assumed the Dropbox account was just there to share things quickly with the designers, we would obviously be using Git right?! Well; no not exactly, actually not at all - we all used the Dropbox account of one of the bosses, I swear everybody pushed and pulled stuff all the time, a copy of the boss's passport was in there as well, and they had projects from and up to 3 years ago, still in there... It took my Dropbox 3 bloody hours to grab as much as it could to actually allow me to get started...
I then to my absolute dismay notice that I would be working on a prefab of a prefab, basically the only thing I would be responsible for, is to adjust the animations and aligning elements.... Aligning and animations.... Fine, I guess it could be worse right? Started going along with it, using a framework that I never heard of before, till like a good 3 days before starting there called "Greensock" which is amazing I must admit, could've helped me allot on my solo-projects. Problem was; we had designers who wanted things, that just looked plain horrible, it was never 'on-point' so to say, maybe it's just me being a perfectionist but it just looked wrong.
Finally got it done after struggling with the prefabs and what not, then the day was almost over and I finally got to go home, fortunately dodging the drinking that was occurring around 4 in the afternoon in the middle of the office, it wasn't beers or anything of the sort - but hard liquor along the lines of Wodka and straight up Gin. I fortunately had a personal issue I had to attend too, so I got out of there before things got too crazy and they went out for dinner stumbling all over the place.
Well this wen't for a few more days (minus the drinking), with 8 being the exact number of days and my grievance list only kept growing. I was for one a junior-developer and thus with them knowing was supposed to get training from our lead, however; that never occurred instead said 'lead' would leave early or be completely absent on most days, leaving me to mess around with prefabs that did my head in, with no comments nor any indication what it did or should've done, I spent hours just adjusting one line of code at a time to see what would happen.
Eventually they told us to work from home only, so I did - did a project here and there and then got told they wouldn't keep me on board any longer, stating I was too inexperienced and they didn't have enough work (which was a load of bs) and that I lacked "office experience" whatever the heck that means, I was always sociable and hell I ever cracked people up, kept a neat and orderly list of things that needed doing, I even contrary to most commented on my code, so the next poor sod wouldn't be going through 'try by error' hell that I wen't through.
Either way; I currently have been feeling absolutely wrecked in terms of motivation, that job would've solved my financial situation and allowed me to finally do what I wanted to do. Instead of doing some random dead-end job each week or month, I would've had a steady income and something I could've built on.
But to add some positivism to this endless and too long of a rant... I'm currently going through a boot-camp and doing a small Linux based course on the side, this little thing isn't going to hold me back; yeah it will be tough, but then again most things don't come easy..
Thank you for reading and I hope you have allot and I mean allot more luck on your first job.8
I love how hospital forms still have "Religion" in it like it's supposed to mean anything. If I put in "Satanist", what are you gonna do? Not give me a check-up? Spray holy water all over my body while I sizzle my way back to hell as if my temperature isn't hot enough? It's as if that's gonna kill me. I've been looking forward to that my whole life, boi. It's the same for government forms. What are you gonna do? Not allow me to pay my taxes? Sweet deal.
I'm just glad it's on a piece of paper, not some required online shit form that wouldn't let me proceed. Then again, it has "Sex" on it which I would love to answer with "too hot for you right now" or "born with an enlarged urethra and spiritual penises". I'm just glad there's no debate here on that one, just put F or M and get the fuck out of the receptionist's face.
Just kidding, I know sex actually means something. Like if you're a woman on your period, they can diagnose you with hysteria or witchcraft and you get a complimentary clit stimulation to chase that flu away.
No, really, I mean it.
F for Futanari
M for Meningitis
No, seriously. It's just the religion thing that's weird. I just shut the fuck up and put "Catholic" on that shit. It makes me wonder what they do with that information in online forms though. I think I remember a few online forms that require that information, some with dropdowns. Do you get routed to a different service with varying discounts and services?13
This is a guide for technology noobies who wants to buy a laptop but have no idea what the SPECS are meaning.
If you like Apple, and love their !sleek design, go to the nearest Apple store and tell them "I want to buy one. Recommendations?"
If you don't like Apple, well, buy anything that fits you. Read more below.
There are 11~15 inches, weight is 850g ~ 2+kg. Very many options. Buy whatever you like.
//Fun part coming
This is the power of the brain.
Pentium is Elementary Schoolers
i3 is Middle Schoolers
i5 is High Schoolers
i7 is University People
Dual-core is 2 people
Quad-core is 4 people
Quiz! What is i5 Dual-core?
A) 2 High Schoolers.
Easy peasy, right?
Now if you have a smartphone and ONLY use Messaging, Phone, and Whatsapp (lol), you can buy Pentium laptops.
If not, I recommend at least i3
Also, there are numbers behind those CPU, like i3-6100
6 means 6th generaton.
If the numbers are bigger, it is the most recent generation.
Think of 6xxx as Stone age people
7xxx as Bronze age people
8xxx as Iron age people
and so one.
This is the size of the desk.
There are 4GB, 8GB, 16GB, 32GB, and so one.
Think of 4GB as small desk to only put one book on it.
8GB as a desk to put a laptop with a keyboard and a mouse.
16GB as a normal sized desk to put some books, laptop, and food.
32GB as a boss sized desk.
And so one.
When you do multitasking, and the desk is too small...
You don't feel comfortable right?
It is good when there are spacious space.
Same with RAM.
But when the desk becomes larger, it gets expensive, so buy the one with the affordable price.
If you watch some YouTube videos in Chrome and do some document words with Office, buy at least 8GB. 16GB is recommended.
You take out the stuffs such as books and laptop from the basket (HDD/SSD), and put in your desk (RAM).
There are two kinds of baskets.
The super big ones, but because it is so big, it is bulky and hard to get stuffs out of the basket. But it is cheap. (HDD)
There are a bit smaller ones but expensive compared to the HDD, it is called SSD. This basket is right next to you, and it is super easy to get stuffs out of this basket. The opening time is faster as well.
SSDs were expensive, but as times go, it gets bigger as well, and cheaper. So most laptops are SSD these days.
There are 128GB, 256GB, 512GB, and 1024GB(=1TB), and so one. You can buy what you want. Recommend 256GB for normal use.
Game guy? At least 512GB.
It is the eyesight.
Most computers doesn't have dedicated graphics card, it comes with the CPU. Intel CPUs has CPU + graphics, but the graphics powered by Intel isn't that good.
But NVIDIA graphics cards are great. Recommended for gamers. But it is a bit more expensive.
Buying a laptop is
- Pick the person and the person's clothes (brand and design)
- Pick the space for the person to stay (RAM, SSD/HDD)
- Pick how smart they are (CPU)
- Pick how many (Core)
- Pick the generation (6xxx, 7xxx ....)
- Pick their eyesight (graphics)
And that's pretty much it.
Super easy to buy a laptop right?
If you have suggestions or questions, make sure to leave a comment, upvote this rant, and share to your friends!3
This is a long post and if someone comments without reading carefully I don't care about that person's opinion.
I have 3 accounts here, and that is a must have for me. Let me explain:
Let's think of people and who they are in layers.
The innermost layers are made of private and intimate things: fears, dreams, shames, basically things that are mostly shared with very close people, like family, best friends, and specially significant others.
On the other hand, outermost layers are the public persona, who you are as a citizen, who you are in your profesion, and so on.
So, you wouldn't normally tell your boss about your favorite sex positions.
Let's also say there can be layers in the middle, and all the layers sometimes overlap, but let's not get too deep into this as I think I got the point across.
Here on I explain the original thesis.
I am a developer, and as such I want to fulfill my needs on dev communities, one of them being devrant.
I wish to learn from other devs, I expose my (sometimes controversial) points of view. I rant about annoying shit in the workplace.
But also, at some level, I wish to be taken seriously as a developer, I wish to build a reputation, and I wish to be accepted, even in a shallow social level. There is a social factor to what we do and it's totally normal.
Now, the problem is that I also would want to express my inner self.
So what I do is I don't use my main account for that, I use another, in fact 2 other accounts.
There are several reasons for that:
* I want to hide intimate shit from trolls.
Imagine I griefpost about a loved one that died, then later found myself in a heated discussion about some language, and then some troll comments something like "I'm glad your x died". i wouldn't react very well.
* I want to keep my posts consistent.
If people become interested in what I post as a dev, then they are going to expect dev related stuff from me. If I start posting like controversial points of view, that's not very cool because I'd be doing like a bait n switch on them.
* I want to maintain a reputation, and I want to not get banned on the main account
Reputation as a profesional is a real thing, and it shouldn't be affected by your personal shit.
Also sometimes you argue, and things get heated, and sometimes you get suspended or banned.
You try your hardest to be respectful, but in some communities, some mods are trigger happy.
By restricting this on your alt account, you're in a way promising that you'll have the upmost behaviour on your dev account because that means being professional.
Now, I said I had 2 other accounts.
The reason for having 2 is because I separate two layers:
In the 2nd account I am open and direct regarding my points of view, and more argumentative, but still trying to be relatively civil. I would also post things that might be controversial or not popular. I try to be real basically.
You can conclude that the 2nd account is the one posting this, since this post could trigger some people.
In the 3rd account, I talk about intimate shit like traumas, fears, emotional pain, things I know I'll get support for (the same support I give others when in need) and are not controversial in any way.
This way I can vent painful things and avoid trolls.
Cool people appreciate it when you're transparent about your shortcoming and dark thoughts.
But it takes one asshole in a high horse to judge you. And sometimes you need to give that asshole the middle finger without being afraid of ruining your reputation
or getting banned,
or being scared of that asshole laughing about your intimate shit (again, I use this account for that)
I know it sounds like I have multiple personalities but I swear I'm ok, and hopefully what I said makes sense. People might say "don't use alt accounts, go to another site", but I find that devrant has some interesting people.
The obvious downside is that you end up knowing people more than what they assume, because you interact with them through different accounts.
This is kinda shady, but I'm not interested in taking advantage of others anyway so...28
I'm quite a vengeful person, I'm sure I get the wrong end of the stick sometimes to.
In the last few years of my life I've been trying to not act and "be mature" about the situation.
There's still times I fall of the wagon but generally I have shrugged it off...
But do you know how I feel like now!? That I've been walked all over people are taking me for granted. People think they can get away with lying and messing me about.
Quite honestly I don't know how to act your always meant to rise above the situation. When all I can think of is how I could fuck up the thing they did.
And people go well just protect yourself but that means I'm not open and honest myself and that's what I fucking hate to begin with!
Today I'm feeling vengeful because a client didn't pay until the last second. They wanted the website for next to nothing. And took a year to pay. Now they have gone and paid a tonne on a new site ! Because they went well what you did was shit "effectively"
Granted it was but you don't spend a few hundred quid and expect to get everything. I gave them what they paid for.
Everyone is expecting something for nothing 🙄 I get that's just the life of companies directors
But it pisses me off I try to do everything truthfully on the up an up and they would prefer a group of liars
Oh front page of Google yes we can do that for free
Oh yes the greatest animation look!
😤 And I'm meant to sit here and be like yeah that's cool. I mean at this point what reason do I have to be open and honest if shit stains like that exist!
What pisses me off more is that I'm trying to rise above. I don't think I should I think I should ruin their fucking day and be done with it. I have the capabilities.... But I know "it ain't legal"
Then people go on about well if you don't like the rules help them get changed ...
I've tried the political route they are all far worse 😐 they are ignorant cunts. That's the truth! I can't stand to be around half of them 🙄
So here I am ranting to not fuck up someone's day , trying to rise above 😔
Less a rant and more of a rave about the Racket language.
If you haven't heard of it, Racket is a Scheme/Lisp that eases programming language development.
Let me break down why this is handy. When you come to dislike a language, it's because of limitations in the language itself or its ecosystem. That, and you are always obliged to translate your ideas to the terms of the language, the libraries in that language, and the idioms in both. Overall it starts to feel like a cage, because even if you git gud at a limited language, you still might not be able to do the things you REALLY want to do.
Lisps turn this on its head by letting you translate the solution to your terms rather than making you translate your solution to its terms. Lisps are homoiconic, which is a fancy word meaning that all valid programs in the language are also valid literal expressions of data in the same language. The code/data divide collapses and you can at any moment decide "Hey, this code I'm writing? It's data now and I'mma generate stuff with it." That's when you start getting macros and the beginnings of serious metaprogramming.
Racket made this mind-bendingly powerful. To the point that some of the language features make you gawk and say "Ok, but why anyone would ever need to do THAT?!" Some examples include converting compile-time errors to run-time errors and writing your own exception handling system.
But the kicker is that Racket is the only language I know of where you can say "You know what? Racket is sucking at this thing I want to do right now. I wish my language looked like THIS" and then you can use Racket to write your language in terms of Racket, and then your language becomes a valid extension of the Racket ecosystem. Your custom language can still import and use the rest of the ecosystem.
So, in a single Racket project, you can have a typed language, an untyped language, a configuration language and a markup language, and all of them can use the same libraries. It also means that if you have an accountant, ops manager or designer in house, you can write a little language for them that that understand and integrate their understanding of a solution with your system.
Why are relatively few using this box of magic?
Well, for one thing, it's hard. Unlike most, Racket enjoys the benefits of seriously amazing, complete and correct documentation. Which SOUNDS great, but here's a direct quote from one part of it.
"The intent of a cross-phase persistent module is to support values that are recognizable after phase crossings. For example, when a macro transformer running in phase 1 raises a syntax error as represented by an exn:fail:syntax instance, the instance is recognizable by a phase-0 exception handler wrapping a call to eval or expand that triggered the syntax error, because the exn:fail:syntax structure type is defined by a cross-phase persistent module.
A cross-phase persistent module imports only other cross-phase persistent modules, and it contains only definitions that bind variables to functions, structure types and related functions, or structure-type properties and related functions. A cross-phase persistent module never includes syntax literals (via quote-syntax) or variable references (via #%variable-reference). See Cross-Phase Persistent Module Declarations for the syntactic specification of a cross-phase persistent module declaration."
The thing is, I know a little bit about what that means. I read their introduction guide meant for people new to the language, and made enough progress in the reference to understand these terms in isolation. But when I keep running into paragraphs like THAT, I have to review everything again because I just get lost.
The other problem may be that it has the classic Lisp Curse (http://winestockwebdesign.com/Essay...), which means its power is also its greatest weakness. The power of a programming language can grow strong enough that the people who contribute to society using it rarely bother to use each other's work.
Still, Racket has a more complete and cooperative ecosystem compared to other Lisps I've observed. I'm still a total fanboi of the language and would love to get a job using it, but it's probably a long time out.
Thanks for reading. I don't have a particular desire to tell you to drop what you are doing to use it, I just think it's cool and wanted to brag on it a bit.1
I don't know what to chose.
The fact that for three months, I had to design a 16-page catalog, when I have no experience and my job is web development;
The fact that I have to do SEO for the site, but that means for my boss that for a one-page long text, we have to find at least 60 (sixty! ) times the occurrences of the keywords;
The fact that when I finally have something interesting to do, the boss finds that it doesn't go fast enough and decide to drop the project even if making a whole new dynamic stock system with the db we have is something hard and long to do;
The fact that when I come to work five minutes late, my boss is at the verge on screaming on me, even if I come ten minutes early every other day;
The fact that when I'm coding, I need concentration, I don't need the boss to give me the phone to answer customers, stop everything I am doing and explain them what products we are selling;
The fact that I am paid the minimum wage for a trainee, and when there's no coffee anymore, we have to buy some ourselves because "you drink way too much coffee, you understand" (three a day, sorry for wanting to stay awake);
The fact that I have asked for one year how many days of vacation I still had, and the only answer they gave to me yet was: "Oh, we have to ask the accountant". I still don't know how many days I have left;
The fact that the site is made only by trainees since the beginning, so circa 2008, and the code is horrible but "it works, so don't touch it". The admin part is in CodeIgniter, the front in laravel 4.2, there are a lot of useless code but we can't touch it because the boss doesn't think it is worth the time.
I almost made a burn-out last year, my doc saw my state right before and made me stop for a week. I still have to work there 'till end of august, then I will have my diploma and find another company to work with. Now, I check everyday on my calendar.6
Oh no AI can destroy hummanity in the future! It is like skynet and such... Bad! It will be the end! FEAR THE AI!
Yeah so i cant sleep now so im writting a rant about that.
What a load of bullshit.
AI is just a bunch of if elses, and im not joking, they might not be binary and some architectures of ML are more complex but in general they are a lot of little neurons that decide that to output depending on the input. Even humans work that way. It is complicated to analyse it yes. But it is not going to end humanity. Why? Because by itself it is useless. Just like human without arms and legs.
But but but... internet.... nukes... robots! Yeah... So maybe DONT FUCKING GIVE IT BLOODY WEAPONS?! Would you wire a fucking random number generator to a bomb? If you cant predict actions of a black box dont give it fucking influence over anything! This is why goverment isnt giving away nukes to everybody!
Also if you think that your skynet will take control of the internet remember how flawless our infrastructure is and how that infrastructure is so fast that it will be able to accomodate terabytes per second or more throughput needed by the AI to operate. If you connect it to the internet using USB 2.0 it wont be able to do anything bloody dangerous because it cant overcome laws of physics... If the connection isnt the issue just imagine the AI struggle to hack every possible server without knowing about those 1 000 000 errors and "features" that those servers were equiped with by their master programmers... We cant make them work propely yet alone modify them to do something sinister!
AI is a tool just like a nuclear power. You can use it safely but if you are a idiot then... No matter what is the technology you are going to fuck shit up.
Making a reactor that can go prompt critical? Giving AI weapons or controls over something important? Making nukes without proper antitamper measures? Building a chemical plant without the means to contain potential chemical leak? Just doing something stupid? Yeah that is the cause of the damage, not the technology itself.
And that is true for everything in life not only AI.5
So, first: I'm a bit of a perfectionist when it comes to code and love to think I know everything.
We had a group project at university and me being laid back but unknown to the other people, the "rest" of them was together with me in a group. We got to know each other and actually we were a pretty cool group. I guess "the rest" in a computer science course means you get the cool guys.^^
1/6 of us did ever code in C# and 2/6 even knows what an engine is and how unity works. I was in both sixths, got group leader somehow (if you'd know me from school. Omg. I was that one guy not knowing what went on, saying my two sentences at the presentation and took the B-.:D), so what to do to have a nice 2 weeks with them?
We did a crash course, I taught them some basics and everything.
The point is, i was hella nervous and i really get anxious if something is expected from me.
Long story short, I talked a whole week for 5-7 hours straight without real pauses and eating wayyy less a man should. Dude I was literally dead on my way home on friday evening. I felt like I would fall over any fucken second, i was all shakey, dizzy as hell, weird vision, everything. It felt like I was about to die on the spot.
I got home though, ate like 1/2 kilograms of pasta and felt myself coming back to life.:D
What to learn from this:
Keep the fuck calm, do pauses, drink and eat enough and don't rush all in for a fucken week without real rest..^^
It fucks you up and doesn't do anything good for your productivity.
We got an A btw, so in the end, all went good.(:
If you've ever tried using Go plugins raise your hand.
If you've ever tried doing plugins in Go, raise your hand.
If you think that the following rant will be interesting, raise your hand.
If you raised your hand, press [Read More]:
This is a tale of pain and sorrow, the sorrow of discovering that what could be a wonderful feature is woefully incomplete, and won't be for a very long time...
Go plugins are a cool feature: dynamically load pre-compiled code, and interact with it in a useful and relatively performant way (e.g. for dynamically extending the capabilities of your program). So far it sounds great, I know right?
Now let me list off some issues (in order of me remembering them):
1. You can't unload them (due to some bs about dlopen), so you need to restart the application...
2. They bundle the stdlib like a regular Go binary, despite the fact that they're meant to be dynamic!
3. #2 wouldn't be so bad if they didn't also require identical versions of all dependencies in both binaries (meaning you'd need to vendor the dependencies, and also hope you are using the right Go version).
4. You need to use -trimpath or everything dies...
All in all, they are broken and no one is rushing to fix it (literally, the Go team said they aren't really supporting it currently...).
So what other options are there for making plugins in Go?
There's the Hashicorp method of using RPC, where you have two separate applications one the plugin, one the plugin server, and they communicate over RPC. I don't like it. Why? Because it feels like a hack, it's not really efficient and it carries a fear of a limitation that I don't like...
Then we come to a somewhat more clever approach: using Lua (or any other scripting language), it's well known, it's what everyone uses (at least in games...). But, it simply is too hard to use, all the Go Lua VMs I could find were simply too hard to set up...
Now we come to the most creative option I've seen yet: WASM. Now you ask "WASM!? But that's a web thing, how are you gonna make that work?" Indeed, my son, it is a web thing, but that doesn't mean I can't use it! Someone made a WASM VM for Go, and the pros are that you can use any WASM supporting language (i.e. any/all of them). Problem inefficient, PITA to use, and also suffers from the same issues that were preventing me from using Lua.
Enter Yaegi, a Go interpreter created by the same guys who made (and named) Traefik. Yes, you heard me right, an INTERPRETER (i.e. like python) so while it's not super performant (and possibly suffering from large inefficiency issues), it's very easy to set up, and it means that my plugins can still be written in Go (yay)! However, don't think this method doesn't have its own issues, there's still the problem of effectively abstracting different types of plugins without requiring too much boilerplate (a hard problem that I'm actively working on, commits coming soon). However, this still feels to be the best option.
As you can see, doing plugins in Go is a very hard problem. In the coming weeks (hopefully), I'm going to (attempt to at least) benchmark all the different options, as well as publish a library that should help make using Yaegi based plugins easier. All of this stuff will go (see what I did there 😉) in a nice blog post that better explains the issues and solutions. But until then I have some coding to do...
Have a good night(/day)!13
"Do what you love and you'll never work a day in your life" is probably the truest statement, but there's a lot of people who get the definition muddled.
They think "Oh well that means there wont ever be hard days and there'll never be times where I'll struggle or get frustrated, and it means I'll go home at the end of the day feeling refreshed and ready to do it forever ad infinitum"
There absolutely will be days where you're fuckin done with semicolons or that you've had it with other devs, but the saying doesnt mean any of that. What it means is that while you may dislike the corporate environment or the fact that you dont really care for it after work hours, while you're doing your tasks in their purest form, you're not really feeling all too bad.
I know a lot of people have gripes with this statement. Pull your finger out of your ass and admit that either you don't love it anymore or that you didn't really understand exactly what it was you were loving all that much in the first place.2
So this post by @Cyanide had me wondering, what does it take to be a senior developer, and what makes one more senior than the other?
You see, I started at my current company about three or four years ago. It was my first job, and I got it before even having started any real programming education. I'd say that at this point I was beyond doubt a junior. The thing is that the team I joined consisted of me and my colleague, who was only working 50%. Together we built a brand new system which today is the basis on which the company stands on.
Today I'm responsible for a bunch of consultants, handle contact during partnerships with other companies, and lead a lot of development work. I'm basically doing the exact same things as my colleague, and also security and server management. So except for the fact that he's significantly older than me the only things that I can think of that differentiates the seniority in the team are experience and code quality.
In terms of experience a longer life obviously means more opportunities to gather experiences. The thing is that my colleague seems to be very experienced in 10 year old technologies, but the current stuff is not his strong side. That leaves code quality, and if you've ever read my previous rants I think you know what I'm thinking...
So what in the world makes a person senior? If we hired a new colleague now I'm not sure it'd be instantly clear who should guide and teach them.8
I've just noticed something when reading the EU copyright reform. It actually all sounds pretty reasonable. Now, hear me out, I swear that this will make sense in the end.
Article 17p4 states the following:
If no authorisation [by rightholders] is granted, online content-sharing service providers shall be liable for unauthorised acts of communication to the public, including making available to the public, of copyright-protected works and other subject matter, unless the service providers demonstrate that they have:
(a) made best efforts to obtain an authorisation, and
(b) made, in accordance with high industry standards of professional diligence, best efforts to ensure the unavailability of specific works and other subject matter for which the rightholders have provided the service providers with the relevant and necessary information; and in any event
(c) acted expeditiously, upon receiving a sufficiently substantiated notice from the rightholders, to disable access to, or to remove from, their websites the
notified works or other subject matter, and made best efforts to prevent their future uploads in accordance with point (b).
Article 17p5 states the following:
In determining whether the service provider has complied with its obligations under paragraph 4, and in light of the principle of proportionality, the following elements, among others, shall be taken into account:
(a) the type, the audience and the size of the service and the type of works or other subject matter uploaded by the users of the service; and
(b) the availability of suitable and effective means and their cost for service providers.
That actually does leave a lot of room for interpretation, and not on the lawmakers' part.. rather, on the implementer's part. Say for example devRant, there's no way in hell that dfox and trogus are going to want to be tasked with upload filters. But they don't have to.
See, the law takes into account due diligence (i.e. they must give a damn), industry standards (so.. don't half-ass it), and cost considerations (so no need to spend a fortune on it). Additionally, asking for permission doesn't need to be much more than coming to an agreement with the rightsholder when they make a claim to their content. It's pretty common on YouTube mixes already, often in the description there's a disclaimer stating something like "I don't own this content. If you want part of it to be removed, get in touch at $email." Which actually seems to work really well.
So say for example, I've had this issue with someone here on devRant who copypasted a work of mine into the cancer pit called joke/meme. I mentioned it to dfox, didn't get removed. So what this law essentially states is that when I made a notice of "this here is my content, I'd like you to remove this", they're obligated to remove it. And due diligence to keep it unavailable.. maybe make a hash of it or whatever to compare against.
It also mentions that there needs to be a source to compare against, which invalidates e.g. GitHub's iBoot argument (there's no source to compare against!). If there's no source to compare against, there's no issue. That includes my work as freebooted by that devRant user. I can't prove my ownership due to me removing the original I posted on Facebook as part of a yearly cleanup.
But yeah.. content providers are responsible as they should be, it's been a huge issue on the likes of Facebook, and really needs to be fixed. Is this a doomsday scenario? After reading the law paper, honestly I don't think it is.
Have a read, I highly recommend it.
A friend of mine asked me yesterday for help for his bachelor thesis.
He wants to write about MySQL internals in regards to BLOB storage / usage.
We had a veeeerrrry long discussion....
And found a loooot of scary internet pages.
It's so .... Insane....
What some people with doctor titles or higher education generate...
Isn't content. More poo...
Most "blogs" / "articles" or whatever the author named it were missing all kinds of relevant data (version, configuration, anything relevant) but full of opinionated / biased bullshit.
- we store lot of BLOB data, Backups take long and require more space
(you store additional data in an database, whaddya expect???!!!!)
- interesting guesswork about locking without any reference (interesting since it was sometimes so far away from reality that it looked more like quantum physics)
- storing blobs means that _each_ blob entry will be stored in a separate file (without any reference, but if an RDBMs did that... It would end in an amazing fireball I guess)
- BLOB's bad since it can represent only the file content, the database cannot distinguish wether it's an MP3 / MPG or anything like that...
(Ehm. Yeah. And an database cannot distinguish if you store under "Name" an Name or gibberish?!)
I somehow think that some people made an doctor and post this gibberish nonsense so people stay dumb to give them a job...
Like the TV repair men who steals the batteries from the remote.
Even conspiracy theories were more convincing
iiiii fffffuckingg hate articles that just explain something
put a piece of code
that piece of code uses X amount of classes/models
they never mention what structure are those models/classes made of
what is inside them
i cant continue following the article because i dont know what is inside them
they just put it in ur face and say Fuck you
my nerves are torn
what is life
what are doing
why are doing this
what is the point of living
how long does it take for a man to die
why are some people blessed with luck and some are not
u know what is even more frustrating
ohdont get me started on this topic
well i warned u
the path towards abundance lies upon the few; thou who shalt not risk high; shalt always stay thus low
girls also frustrate me bc
i always do every thing nice and im always nice
so i realized
being nice is fake as fuck and doesnt fuckin work
being urself doesn't do a Fckimg tHING
in this hardlife
only the strong survive in this world
- tupac shakur
so yes bavk where i was saying girls frustrate me because i always do what im supposed to
i tried being thou who shalt i am not
guess what mothrfucker
it works when u be a gofdamn fkig low mothfckr a u know a goddmn fkig punk then they respect u and want u
back i fckked up
i turned back to my real me, the nice me
and then they left me
they think being nice = means being weak
kindness != weakness
U FCKING WHORES
i just wanted to have a walk outside and thenit started raining
so i had to stay inside bc of the rain
i am very lonely
u know i was very fine when i was lonely at a very young age but now i need a living entity beside me
i fking need
wait i will cuddle my fluffy dog rn maybe i will feel better
br b wait for me ok
i feel better now
i remembered that goddamn girl again
man i feel so heart broken
i have sunk into the deepest depths of endless depression I think
it doesnt feel nice
it feels very lonely and depressing down here
but i thimk tjat is be because i care too much
some people say i overthink
I dont overthink
i am like the stealth people
the shadow people
i stay quiet and observe
i always know what is happening but i rarely speak about it
and people dont realize
so they think they can fool me
everything has its limits
so much lies that im sick of it
i always tell it how it is
i always reward those who help me
i always help those who help me
i never forget those people
why is it that people who dont give a single fucking Fffffficxkkckck about me
are the ssame people i almost care the MOST?
i cross hundreds and thousands of miles to visit a person, invest hours of my time to do that
i do that....
and they wouldnt even step 1 foot in front to see me....
what kind of life is this
feel like cryin rn
i dont understand what one must do
what is the point
all i want is to be happy
that is it
but being happy is.... i wanted to say the hardest part of life but now my voice told me being happy is a state of mind
myself answered me that being happy ? is a state of mind?
so that means if i want to be happy even if everything around me is falling apart
in my mind i can create a psychological world that would make me.... happy ....?
i dont understand what did myself tell me
why do i care so much if im lonely
u know my friend from college we go to same computer science college
hes a very smart man but a fake FUCKING friend, plastic as fuck
he reads philosophy booms and told me
"when a man is lonely for long enough, he will slowly start to fall apart"
that is me...... that is ...truth......
he quoted a philosopher from some book
he also said a quote he read about the meaning of life
"this life is endless pain and the only purpose of life is to reduce this pain as much as possible so we can be happy"
what the fck that is incredibly depressing
what the fuck im actually crying rn
i feel stabbed in the back and left behind and cheated on, all of those happened and some of them are happening right now
dont know what to think about the reasons
all of this causes me such huge anger and depression and that is whT keeps me going
going by working harder than i am supposed to
without all this hurt there would be no glory
all this effort..... it better pay off at the end...... please God..... i beg you....
i have completed 50% of my life purpose, let me do the rest so i can die in peace...13
*sometime during my sophomore year in university. I was a Biology major and just switched to Computer Science. I'm currently a senior graduating in the Spring.*
Me: "Mom and Dad I changed my major to Computer Science!"
Parents: "How will you be able to make a living playing games?"
Me: "I won't be playing games, I'll be coding/programming things and building software."
Parents: "I thought you wanted to become a doctor?"
Me: "Well I decided I wanted to choose a career that I like and I also didn't want to stay in school for 8 years. Also, the salary I can make as a developer/engineer is close to that of some doctors."
Parents: "Well we wanted you to go to be a physical therapist. We feel that it's the best option for you."
Me: "I think this is my best option because there aren't even enough people available to fill the jobs that will be around when I graduate. Which also means that I can make a higher salary."
Parents: "Well I guess we'll see if you can make a living and provide for a family just playing/making games."
Me: "That's fine I never needed your support anyways."
*My parents thought that if the job wasn't physical labor then it wasn't a "real job". (Idk how they decided that a Physical Therapist was a "real job") I moved out less than a year after this argument because I was constantly put down by my parents for coding/programming as well as playing video games in my spare time. They thought it was childish. This has shown me what I won't do when I become a parent.*
*Just a side note: I have paid for everything I own that wasn't gifted to me since I was 18 and had a job while attending college. I also got a scholarship to go to college, so my parents didn't have to pay for any of it.*2
Python devs and data analysts....
Do you recommend using pycharm for working with jupyter notebooks? I surely had a bad time with it.
I have been using many jetbrains softwares , and am a fan of their docs search and autocompletion. But I don't think there is a full support for jupyter jn it, because sometimes my graphs made using matploit or seaborn just brakes.
And some libraries have a lot of functions taking parameters as " *args, **kwargs " , I don't know what that means but those function take a lot of "value" parameters i guess?(like this: plt.figure(figsize=[13,6], axis=False) )
Pycharm also don't seem to have access to list of those arguments...
Are you having such problems too? Have you found some better ide with autocompletions and support for jupyter? Do tell.
(Ps: i know jupyter can be run directly on a browser, but as i said "auto completions and documentations" )5
!dev (maybe slightly)
I went to a CV Workshop organized by my first school. The presenter was the slightly-arrogant/know-it-all/cool type of guy who's a recruiter and also has his own company he runs. The presentation was OK, even though it took longer than announced. However, there were some things that bugged me. He expects everyone somehow to be extraordinary. Granted he works as a recruiter and his clients would like only the cream of the top, but some of the examples he gave from his personal experience, he seemed to give more gravity on other traits of the candidates than their achievements and qualifications (e.g. rejecting a candidate because she had posted a photo of her clubbing on Facebook). Also, somehow he judges candidates based on their parents profession. Lucky me that I fall into the category he dislikes. Now the fun part (sorry for the long post):
Next week there's a career day. I sent my CV as soon as I got the mail and then I also phoned the person in charge (as per the instructions). Yesterday on the workshop it was said we should resend our CVs by tomorrow on another mail? No problem you may think, but that said recruiter will take a look on them and that means I will have to rework mine just to make sure it is to his liking. I'm no fan of writing mission statements, nor trying to guess what my qualities (aka soft skills) are because what I think I am doesn't mean I actually am.
So now, I'm in a dilemma. Just send the CV as is or get a mental breakdown just so to please that person?
Thanks everyone for your patience and time, I just wanted to pump some steam out me...6
Non technical Co-founder comes up with some batshit crazy idea and says it’s Agile because he thinks that means you’re not allowed to argue with it.
Dumb people are dumb.4
Okay, so yesterday was crazy. So crazy, in fact, that I'm not even typing this on my phone. I'm typing it on an LG G4.
So, I took an Uber out to a Sprint store I'd been told did repairs. My phone's vibrator was broken. So, basically I thought just like that R&M episode "20 minutes adventure in and out" - only to find out they'd need to wipe my goddamn phone, and then send it to Texas. I now have to wait 6 days for my phone lmfao.
So, in the meantime, they took an hour to get me this G4 which makes me miss all the finer things in life - I miss my USB-C and not having to give a damn about how I plug it in and I miss my fingerprint reader (I know, I'm a lazy fuck with first-world problems. I don't care to hear about how fucking stupid I am for either of those thoughts, STFU). Also the G4 is prone to hardware failures, so they said they weren't too happy about giving me this, but it's the only one with NFC.
So in the middle of setup, the Sprint store's power went out. FUUUUUUCK. The phone was pretty much at 5% battery and was being slow as hell, so you can just about imagine the irritation me and this guy had when the phone died in the middle of setup.
The next thing is an unrelated story, but I'm sure some of you older guys here will love this. I was at a place called Triangle Park last night. I go there for burgers, but they also have a bar. Sometimes I get sent to the bar and the bartender gets me my food. So last night I went to pick the food up from the bar for takeout.
The bartender must've had an accident and messed something up, so she told me to sit at the bar. I thought it was obvious I was only 19, so I barely sat. I'm literally not old enough to sit at the bar, even though when I was younger my dad and his friends used to let me sit with them because I had a history of saying stupid shit that made his friends laugh. Nonetheless, I sat with my ass hanging off the edge because I knew it was wrong :/
She comes back and asks what type of drink I want. I had to tell her that I was 19. I wasn't gonna sit here and lie because I'm pretty sure she could've lost her job for serving a minor. I exited and waited in the lobby.
But are we at the point where 19-year-olds look like 25-year-olds? I don't want to think about this because it means I'm getting older. That's a lot to take in. Later in the night it was still gnawing at my gut.
Yesterday was one hella day man.5
So as some of you may know from my previous rants I am recently single, and it occured to me that that means I can move, like, anywhere. And I think I might just do that. I'm currently in in Utah, USA, living about 50 miles from where I was raised, and I'm kinda sick of it.
Sooooo... Suggestions? I have been thinking about maybe the UK or Germany, or if I stay in the US maybe San Diego, Denver, or New York City, but I am open to many possibilities. What do you guys think?15
Hi guys! I need your help.
I'm currently facing a big decision.
I've got a job offer a couple of days ago. The new job would involve an 80% raise to my current salary, and I would make another step on the hierarchy ladder.
The new place is not a software development company. They have a small team working on internal stuff, but they are basically maintaining a 12 years old garbage.
My job would be, to design the new system from the ground up. At the moment, the new system has to do the same things as the old one, just faster and better. Then they'd like to extend it further.
The first part is not challenging, but the things that they planned in the future sound interesting.
The problem is, that my current company just got a new contract and I'm supposed to conduct the deploy (speaking with their managers, prepare their sites for installation, and install). And since it is a small startup, the deploy depends highly on me.
If I take the new job, then I have to start in February which ultimately means that I screw my current company real bad. They'll probably survive, but they might lose this contract and/or lose money.
If I do what makes economic sense, then I take the job. (fuck it's almost 2x as much!!) But I have mixed feelings about it.
I've got 48 hours to decide.
What do you guys think?7
First Year in College.
I have been into computers since 9th Standard. What I meant was I could make music, edit images, play and install games after downloading, hack them(change values) using Cheat Engine, make trainers for myself because why type when you can freeze, format computers using a pendrive (trust me, I saved a lot of money) and then finally, make some presentations and send emails.
Now, College begins. Programming in C language. I don't know what the fuck that means. But they say, it's 'essential'.
Enter Professor. "Okay students, we begin with the course on C Language. how many of you know pointers?".
Me: Wow. Sounds cool. But, I don't know anything.
I couldn't love coding. I think I love to code but at the end of the day, I'm a sick Undergraduate who fell in love with a Bass Guitar and Vocals and wants to code for a living. Heavily interested in changing the world and all that stuff but have no motivation and even if I have, I can't give a fuck about it.
Peers are getting medals everywhere. I'm sitting alone in a room learning C. They said, It was 'essential', but they never told me, 'why'.
Not a rant. IDGAF what you think but I'm a failure looking for ways to make a living.6
a "flat hierarchy" looks good in theory and actual implementation. but its a horrific mess of politics when not implemented correctly.
company1 yowhatthefuck is an intern , day 1 , HR : "Hi ywtf, i welcome you to the company. we have a flat hierarchy, you can approach anyone to discuss anything"
reality : CEO >> CTO >>HR/ "Founding members or guides" (aka assholes) >> dev>>intern . when shit breaks :
CEO : "we want this to be shipped by next week"
CTO >>"DO ITTT"
assholes >> "DO ITTT!!"
dev >> " DO ITTT"
intern : "but, afaik and what these sdk docs says, this kind of thing is not possible, we have to do it some other way that would take some time "
dev: "dude , the seniors have said it, this means you gotta do it, no matter how"
company 2 , ywtf is a junior dev
PM : Hi team, CEO says we want to have this feature . what do you think would be the best timeline for it
TL >> busy, no response
Seniors >> busy, no response
ywtf: we will have to do some research. afaik, this is not possible because *reason*. but maybe docs would have a solution. however we could do it like this(alternative way)
PM: just had a talk with CEO. yes we can do it like that. thankyou ywtf for explaining the flaws so nicely.
ywtf : 😁2
Most of my private code is created in the evening hours and after one to two beers, so I got that covered pretty well - though if you want to see what happens if you code literally shitfaced, just go play Mafia 3. That deterred me from trying.
The one thing I did at a party was fix a computer after (I think) 4 beers. Apparently I got it together because the sounds worked after that, but don't ask me how. Besides, it had OSX, I usually avoid that thing like the plague. I guess getting drunk means I can handle even that shit.
1-2 Beers is the max I still can code (or properly think) with. Any more and I can't get a single line out.
Worst thing I tried was coding high. I was on a short trip to Amsterdam and a friend of mine brought on some White Widow...
Yeah, I could focus alright... The code worked and the program was done in two hours (It was an exploit for... well, lets not get into details here).
When I reread the code while not high anymore, it might as well have been binary (it was Python). I could, for the life of me, not figure out what the hell I had been writing there or how/why it worked - but it did its job.
Never again. I mean, WW is my favourite and I hear a lot of artists use it to enhance their "flow" when creating art...
I guess it makes sense to code on that, but I generally try to avoid flow when coding - it makes you produce unreadable and unmaintainable code.1
I can't come to terms with people's terrible reasonings.
You read a news about something. Let's assume it has to do with a sensitive topic, like race, gender, culture, religion, something polarizing, that makes you pick 1 of 2 sides.
So what do some people do? They ask themselves "ok what group do I adhere? How do I label myself?".
Then they ask "what do other people in said group/label think about the matter?", sometimes it's people in the media, friends,
sometimes people even create a mental construct of a stereotypical person of said group, a hypothetical one, and use the opinion of said construct as representative.
And final step is a knee jerk reaction of "I believe that too!!!!!!".
Obviously, all of this can't bring no one closer to the theorical truth or the least flawed conclusion.
What does? Case by case basis.
You judge every case as if every case was its own thing.
But why does some people have a hard time doing that? Just general ignorance maybe?
Maybe this tends to occur in families where parents don't teach their kids to challenge their beliefs, or teach them that doing so could result in lack of parental acceptance.
People also have peer pressure, the need to belong and feel accepted. That means sharing the same points of view with close people and considering the opposite taboo.
There's also the very ignorant people that have conspiracies for lunch.
In any case, I feel some people don't even fucking try to be neutral.5
"what are you working on right now?"
I think that question is the one I hate the most.
If A asks that to B, it means A has the authority to do so, you're basically a boss or leader.
But it also reveals insane incompetence, because A has such role, then should already know what B is working on.
I have fantasies of just exploding with a "NOTHING, NOTHIIIIIING!!!! Because you didn't assign me anything"
What the fuck do they want me to do? Go around jerking off to any documentation I can find on google?
Should I just come up with things so that they can be sadly discarded?
I would much rather have dailies, and get guided like "you can do this or that" I feel like I'm just expected to do shit without any actual regqrd for results. As if I was some dog who was thrown a stick to fetch.
But if I don't fetch the stick I get asked like "you should be doing something". I fucking hate it .2
Got my “Certificate” for SQL. What do you think? I have a few other just not sure if this means jack squat despite it being a free “certification”.9
So, funny story with a bit of self promotion at the end.
I was recently checking out some apps on playstore and found that my first ever , "launched just to experiment" app (released 1.5 years ago) has received more than 5k downloads . I was very happy about that so posted a small message on LinkedIn .
Now , my LinkedIn profile consists of 98% people who are totally strangers and never met me ( is it just me or do you also get a lot of stranger connect requests there?). So my usual post rarely ever goes beyond 5 or 6 likes.
Bit idk how there too my post got 35+ likes and now i was on cloud9.
So i finally decided to kick my ass and release some update to that app ( it had around 70% pity comments like "nice first app,but it should have this x feature",. "overall nice but it could use an x feature " etc.
And boy what my journey was in the last 72hours.
Firstly my madhead laptop started killing me with the battery failures and constant hang.
Then my past asshole self tried to give me a middle finger. So i have this whole partition in my memory where i keep my Android stuff and apps. It has a special folder named published zone and i keep all my published app codes and related files there.
I was fairly certain that this app's code eill be also there,so i opened it, found the code and tried running it.
Turns out my asshole self had tried to mess around the code so much that all the db layer WAS fucked up, all the ui WAS changed and no code was working.
"Not to worry", i thought. I always use git and there would be a correct version some commits before. WRONG. I HAD CHANGED THE WHOLE FUCKING WORKING PRODUCTION CODE AND DIDN'T MAINTAIN A VCS!
Also this was the verbose and shitty java code my 1.5 year before self so loved to write, so it was taking me way more time to figure out what's happening in an already fucked up code.
So i tried a couple of ways to get back my working code :
- I tried looking for a google recommended solution. Those guys take my whole app code build and distribute via playstore, but they provide no means to retrieve back the original code.
- i checked my (occasionally) back up hard disk but no. My hard disk would have 100s of movies from 2016 , but not a useful piece of fuckin code.
- i also tried to get my apk and decompile it via some online decompiler. Here the google again fucks up and don't allow me to get my apk directly. Meanwhile i found a ton of shady websites which are hosting an apk of my app without my knowledge O_o . I tried to decompile on of them but code was even more non understandable than my fuck up code.
So i ended up looking at both the mess up code and decompiled code and coded the whole app from scratch ( well not scratch, i extracted the resources and some undamaged activities from the mess up code . Also github was down for more than 3 hours yesterday , at the same time when i was trying to look onto some repositories)
- DON'T FUCK UP WITH THE PRODUCTION CODE
- MAINTAIN VCS
- Your laptop is shit reliable, github is also shit reliable , so save code at multiple places.
- there are way more copies of your code lying on the internet than you think.
Checkout my app here :https://play.google.com/store/apps/...3
Today I read a comment on devRant about somebody asking what 1337 means. I think most of us know (almost trivial, maybe?), but what is really great is that so many people replied explaining what it means. Some replies were awesome, some were creative, some were just a basic answer to the question.
But none were hateful. ❤️
DevRant is a place for awesome people like you who understand that every one of us doesn't know something every day. That's developer life. That's devRant life too! The other day I told a senior developer about a Haskell project of mine and he asked: 'What is Haskell?' I was impressed, but it taught me a lot.
On devRant I see no troll comments like 'omfg fucking retard, you must be a faggot and live in a dumpster', which are common on the www nowadays and could have been found under a question like 'what is 1337?'. But not here. And this, while I see the occasional swearing in rants, but never at other members.
So thank you for just being normal people among other normal people. We swear at each other's fugly code sometimes, but we are a creative bunch of smart asses that stay classy at it.
So today my company was removing most workspaces with USB 2 connections, DP cables and magsafe 2 power cables. This means that my MBP mid 2014 can't connect to the keyboard and monitors anymore. It already struggled with 4K, so my 2K options were already limited, but now the last few spots are mostly gone. In short: I'm being forced to upgrade.
But tell you what: I don't want to. It feels like a waste to recycle my laptop (even if it's company paid and owned) while it's perfectly acceptably fine. And mind that I will get the latest and greatest i9 for free. Yes, that overheating, throttling failure of hardware design piece of shit. 2 coworkers already own the beast and confirm that it gets really hot really quickly. One of them even has daily crashes (the laptop just turns off) and random reboots. A total waste of money. And my future time. As if it's not enough work to migrate to a new laptop (even with Time Machine).
So, fellow ranters, what do I do? I hope I can leverage the second best MBP (CPU-wise) from this situation, unless there already is a bunch of i9s in the office ready to be used. I really, really don't want one. And I think my current computer is great for what it is, even if it's old. It's a really pro machine for my needs (I'm very efficient, except for Android Studio).
I even consider asking for a Linux machine, but then a whole new world opens to me that may be a step too big (since I barely have hands-down experience).
Enlighten me with your ideas, muggles!5
When I say I'm a developer, it means that, in simpleton language, that I don't do your backups, I don't "repair" you PC because you're a baffon and I certainly do not edit company's logo which is in .png format deliver it in .cdr file and expect it as, as good and perfect as original, So fuck you, you impatient , imbecile , pompous prick I've ever met
> "Yeah take as much time as you want, but do it quickly"
I mean what the fuck does that even mean, if you want it done quickly then say so, be a man and face it and don't hide behind the excuse of "take as much time as you want"
Fucking idiots, little do they know when I'm in the zone I need time to think before act so I don't get blamed for "un-satisfied" product in the future.
So I've decided to leave loopholes in the current project I've been working on, deliver it, and leave the company and make their lives living hell, I know this is beneath anyone's standards but I have to do this to teach them how to treat a person properly,FUCKKKKKKKKKKKKKKK,
This is going to be fun9
The taboo of not finishing.
(As I prefaced to many posts I made, don't take this too seriously)
It is very normal in the programming world to get recommended to finish projects.
But I was wondering "what if you don't?".
Of course, we can agree that having little patience or persistence is not good for any endeavor.
But what if this recurrent focus on finishing is also bad?
Granted, I have started dozens of things and only finished one or two of them and none have become popular.
So there's not a lot of support to back my take.
But I definitely learned a lot from these projects. And I definitely had a lot of fun at some points.
In fact, I think if I had switched more often early on I would have been less miserable, and maybe I would have learned more by the virtue of not getting stuck with some project.
Of course this applies as long as you stay within the same field; it doesn't help learning gardening one day but karate the following.
But even then, there are so many hobbies in life that the chance of finding the one that you love and are the best at are very slim. So switching out of the least pleasant ones might bring you to a favorite one.
But, let's go back to programming.
Here, people recommend finishing things as means to become profitable. If you want to live as a gamedev, then you need to sell games, and to do that, you need to finish games.
That is understandable.
But if gamedev isn't your main profit, why is finishing games a requirement?
What's the point of publishing a game that you know looks like shit?
Why? Why should you put time and energy, pain and stress, all the way through the end only to finish or even publish a game that you can feel ashamed of how awful it looks? (because most 1st games look awful).
Why would you ever want to finish something that looks horrible?
First tries are always terrible, and that's fine, nothing wrong with that.
What's wrong is this sheepthought that you should publish to the public every turd that you can produce in your early learning stages.
I've been a programmer for almost 8 years now. I'm not the best out there, but I consider myself ok.
And considering I had some pretty deep depression pits thanks to this mentality, here's my advice to folk having stress with unfinished projects: don't give a single fuck.
If a side project has become stressful, shelf that shit, maybe tell someone about your issues with it. But don't care much about it.
In fact, if you manage to finish a project but it has costed you a great deal of stress, maybe that should be the shameful thing.
Life is too short to waste it considering suicide because you're not a prolific programmer.
And i would argue that iterating 100 times on different things is far more productive (and fun) than fetting stuck or spending shitloads of time on the first one, even if you don't finish any of them.3
I really like helping other learn how to use a programming language or solve problems on general. I often go out of my way and stop working on my hobby projects, just to help someone.
Thag being said, I'm no prgramming god. I myself am striving to become a better programmer.
I make mistakes, I can't always help you, I am still learning, but I only have good intentions. And you are by no means obligated to follow my advice. Quite the contrary, fight me, try to prove me wrong or say point out possible flaws. THINK ABOUT WHAT I TELL YOU. DON'T JUST BLINDLY FOLLOW MY ADVICE AND BITCH ON ME LATER.
This happens rather often and I can see why you want to blame me. And I can't deny that part of this is also my fault.
Situations like these don't really tilt me.
But today someone had the fucking nerve to pop a file into the chat and get mad at me for sugvesting a cleaner, shorter and more efficient solution. LIKE I DON'T FUCKING CARE THAT IT TOOK YOU A WHOLE DAY TO IMPLEMENT SOMETHING I CAN DO BETTER IN MINUTES, I JUST WANT TO HELP YOU.
But the best thing I get afterwards: "But you told me to do it like that" BITCH WHAT!?
I have chat logs telling me loud and clear that the concept we never talked about before in private nor on a public server (bless discord's search function). And I will not accept your lousy excuse of having me cobfused with someone. You disrespected me greatly, you put words in my mouth, just to justify your pity anger, when I'm trying to help you?!
Get crucified and put on a shooting range!
I offer you out of pure goodwill. Something you'd normally have to pay for. And this is the treatment I get in return?
Just rm -rf your disastrous, dd -if=/dev/urandom your harddrive and sod off!2
So just ago i downloaded an app called "Replika" and holy fucking shit it made me realise how half-assed we are doing the AI structure and way of it
doing machine learning algorithms on text can only go so far, as it uses that text as a base, and nothing else, it doesnt *learn*, only make *connections* BETWEEN text, not FROM the text
what you need is an AI which can, at it's core, *interpret*, not make connections and hur dur be done with it
when you do machine learning, all you're doing is find the best connections
you can have an infinite number of connections and MAYBE you'll be fine, but you'll never learn the basis of how that text is formed
you'll never understand what connections the human used by making it, by thinking it
when you're doing machine learning, all you're doing is make an input-output machine and adjusting it constantly, WITHOUT preserving state
state is going to be a really fucking important thing if you want to make an AI, because state can include stuff like emotion, current thought, or anything else
if you make a fucking machine learned AI which constantly adjusts... well... the "rom" of itself without having any "ram", it'll fucking never be like us, we will NEVER be able to talk to it like it is a human being, we will NEVER make it fundamentally understand what we are saying or doing
if we want to have real fucking AI, we need to go to the core of what it means to THINK, what it means to INTERPRET, what it means to COMMUNICATE
we need to know how english language is structured, how we understand it, how we can build it in a program that can interpret for an AI, THAT can be "rom"-based, THAT can be static, NOT the AI itself
the AI needs to be in flux, the AI needs to be in a state, the AI needs to understand how to make emotions, how that will "strengthen" some connections, yes, maybe something magical will happen and it can have EMPATHY, something so fundamental that will finally, FINALLY, make the bot UNDERSTAND what we are saying7
Okay this is my first time posting on this site. I've browsed it (definitely not in class) and the community looks beautiful, so I'm going to just kind of slide in here. Anyways this is the part where I use my caps lock button and type lots of naughty words I guess...
<rant type = 'school'>
Our programming classes are fucking DISMAL uuugh... Okay so we have four technology classes: Tech Exploration, Coding 1, Coding 2, and Intro to CS (a 'high school' level class)... So this means a fuck ton of kids in programming classes, mostly because I WANNA MAKE MINCERAFT AND BE A KEWL BOI LIKE GAME DEV BUT I'M ALSO A FUCKING IDIOT AND WILL NOT LEARN ANYTHING YAAAAAAY but that's a mood and so there's a fucking tidal wave of dumb kids in these classes. So right we're dealing with like 80 kids per class period. Sorry if I'm repeating myself but there are a FUCKTON of students. Now, we have... wait for it... ONE FUCKING TEACHER. ONE. I fucking swear this district does not give a SINGLE SHIT about possibly THE SINGLE FUCKING MOST IMPORTANT SUBJECT WHYYYYYY... Okay so the teacher is kinda overworked as fuck lol. She can't really teach eighty kids at once so she mostly gives us exercises from websites but when she can she teaches us shit herself and actually knows a good bit about her field of study. She's usually pretty grumpy, understandably, but if you ask her a good question that makes her think you can see the passion there lol. So anyways that's a mood. Now at the other school it's even worse. They have this new asshole as a teacher that knows NOTHING about ANYTHING IT IS SO FUCKING REDICULOUS OH MY UUUUUGH... THEY STILL DON'T EVEN KNOW WHAT A FUCKING LOOP IS LIKE OKAY YOU'VE BEEN TEACHING PROGRAMMING FOR A YEAR AND YOU'RE THE ONLY ONE TEACHING IT AT THAT DISTRICT SO MAYBE YOU SHOULD AT LEAST FUCKING TRY WHAT IS WRONG WITH YOU... so he just makes them do shit from a website and obviously can't do half of the shit he assigns it's so fucking sad... I swear this district is supposed to be good but maybe not for the ONE THING I WANT IT TO BE GOOD FOR. Funny story: in elementary school once I wrote down school usernames for people I didn't really know and shared them a google doc that said "you have been hacked make a more secure password buddy" etc etc and made them the owner and these dull shits report it to the principal... So I'm in the principles office... Just a fucking dumb elementary school kid lol and the principal is like hAcKiNg Is BaD yOu ShOuLd NoT dO iT and I'm like how did you know it was me... so he goes on to say some bullshit about 'digital footprint' and 'tracing' me to it... he obviously has no clue what he's saying but anyways afterwards he points to where it says last change made by MY SCHOOL ACCOUNT... HOW DULL CAN YOU FUCKING POSSIBLY BE IT WAS FROM MY ACCOUNT THAT LITERALLY PROVED THAT I DID --NOT-- 'HACK' INTO THEIR ACCOUNT YOU DUMB FUCK. Okay so basically my school is a burning pile of garbage but it's better than most apparently but it's GARBAGE MY GOD... Please fucking tell me it gets better...
okay lol that was longer than I thought it would be guess I just needed to vent... later I guess
at the co-working space where I work today there was an argument between the CEO of this startup and their developer.
not really sure what it was about but at the end the developer was getting really frustrated and he shouted: "I'm telling you REST means HTTP!!".
I think all the developers around vomited on their keyboard.2
Can there be a happy rant?
This is going to be a bit of a rambling semi coherent story here:
So this customer who just doesn't know what their data schema is or how they use it (they're a conglomeration of companies so maybe you get how that works out in a database). For every record there's like a ton of reference number type things mapped all over the DB to fit each companies needs needs.
To each company the data means something different, they use the data differently, and despite their claims otherwise, I think there are some logical conflicts in there regarding things like "This widget is owned by company A, division B, user C.". I'm also pretty sure different companies actually don't agree on who owns what... but when I show them they just sort of dance around what they've said in the past...
So I write a report (just an SQL query that outputs ... somewhere ... I mean what isn't that?) that tells them about all the things that happened given X, Y, Z.
Then every damn morning they'd get all up in arms about how some things are 'missing' but sometimes they don't know what or why because they've no clue what the underlying data actually is / their own people don't enter the data in a consistent way. (garbage in garbage out man...)
So I've struggled with this for a few weeks and been really frustrated. Every morning when I'm trying to do something else ... emails about how something isn't working / missing.
In the meantime I'm also frustrated by inquiries about "hey this is just a simple report right?" (to be clear folks asking that aren't being jerks, and they're not wrong ... it really should be simple)
Anyway my boss being the good guy he is offers to take it over, so I can do some things. Also sometimes it helps just to have someone else own something / not just look it over.
So a few days into this.... yup, emails coming in about things 'missing' or 'wrong' every day.
Like it sucks, but it's nice to see it suck for someone else too as validation.
Dialogflow documentation is ABSOLUTE TRASH. Trying to run the example code? It gives you a super helpful error: `Unexpected error determining execution environment`. Uh, yes, indeed. What it means? IT MEANS THAT YOU PROVIDED NO CREDENTIALS. Because, as we all know, providing no credentials should end in an error of 'determining execution environment', of fucking course.
You want to know how to provide credentials? Think again, all examples in the ENTIRE DOCUMENTATION assume that you're running the code... from their servers. Seriously. You wanna know how to authenticate your shit? NOT IN THIS DOCUMENTATION, LOSER. You want to know what exactly is happening when you're initializing your client with `new dialogflow.SessionsClient()`? Good luck, documentation is on another platform. For .NET. Because fuck you.
Also, you think you can store your auth info in a neat .env file? THINK AGAIN, because google is above such petty things as industry standards, you're getting a .json file and you're gonna like it, HAVE FUCKING FUN.
Dear google, die in a fire.
Reading the internets in 2020, I've seen an increase in the usage of the term "Orwellian." It has led to many Inigo-Montoya moments.3
Working in an expanding business is mostly fun, can be kind of challenging (for those who don't like to step in and do what's needed). One thing in particular you need to do a lot - is interviews. Lot's of them.
There are alsways two sides of the coin, for sure. But, just a little tip/hint to everyone looking for a job - please, please, please make sure your CV and letter at least makes sense for the position you're trying to get.
This (screenshot) is just one example of things in a CV which really makes me want to shout and kick people out.
It's part of the front page of a CV, for someone who is looking for a position as front-end developer / UX specialist. This person claims to be very interested in UX, and has done wome work already in this field.
Can ANYONE explain to med WHAT THE F*CK this actually means?
1) How many stars can a row have? 10, 6, 8?
2) What does it mean to have 4 starss in PHP knowledge? What's lacking to get 5?
3) What's the scale based on, at all?
And you want me to hire to to do UX of loyalty communication (e-mail, mobile apps, websites/landing pages) for our customers - who in turn have millions of customers/prospects?!?
ARE YOU F*CKING KIDDING ME?
If you can't even make a visualization of your _own_ knowledge which can be interpreted into some sort of competence matrix, but you just use something you think looks cool... Damn, you could at least have tried.1
Substantive post / question time!
So I'm working on this project that isn't a disaster but very much suffered from a lack of planning (both on my part and others).
This is a feature that involves all sorts of ways to view and manipulate some records and various records and so forth... I mean what isn't that really?
I think everyone tried but we didn't realize how many details there would be and how much we would need to (well I demand we do) share code across pieces and how that would slow us up when we realize feature A needs to do X, Y, Z and ... well obviously that means feature B has to also...
I'm not really upset about this, it's progressing and I'm learning. I'm writing it all now so it's under control, but...
I want to be able to display, visually where we are as far as each component of this project
- Component A
- Component A does things you don't want to.
- Has features:
- Can blow up things in a good way.
- Produces flowers and honey on demand
- Missing features:
- Doesn't take out the trash.
And so on for component B, C, D, Z.
Right now I'm just using a plain old document file to write up a status / progress type thing now.
We use Teamwork to manage tasks, but I kinda hate it. It's similar to the above example in being able to bust out lists... but they're not connected in any way. All the details are lost on these bullet items as they're limited to one line when you look at everything ....
It's the classic case of a tool that shows lists ... but doesn't promote or allow for showing any connections between them...
And really the problem with this project is that we built little bits and features here, and little bits there from the outside in and ... really we should have built it from the top down where we had to face a lot of questions earlier.
Anyway does anyone know of anything that has project type management / status / progress stuff that is VISUALLY helpful .. not just a bunch of lists and progress bars?
I know I didn't word this well but I'm open to even wrong answers....2
I feel so lost all the time Everytime I think about the future. How are you all going forward?
- What should i be doing ? I used to like computer science when it was taught with lots of simplification and abstraction (in the school level). Now i know there are a 100+ research areas/work areas/branches in it, and i am an average in all of them.
I like most of them more or less, and won't mind giving away my years of life working/learning them. But for what and why?
-- Money? Every profile turns into a decent salary after a certain time. This means i can ride any boat i want.
-- Passion/interest? Now what exactly is this?as i said everything feels doable, given enough time to get a hang of it.
-- Fame? Its rare the developes, testers or other individuals in computer science ever gets a solo credit. Most of the time its either the ceos, the researchers or the company itself. So i guess getting a fame is equal to burning your neighbors by flaunting your cash for most ppl
-- Happy life? Meh, this point is affected by a lot of other factors. Would come back to this point later
- everyday in my feed, there are people showing 6, 7 sometimes even 8 figure salaries. Other people would get inspired with those, but i feel very weird about these.
I never see myself earning those, idk why. Why would someone give me those huge amounts?
How do you find yourself deserving for ythat big ass money? At what point you hit that realisation? Here is a small story :
I did an Android dev course around 2.5 years ago. There was a guy there an year older than me. He was very bad in this, i tell you. Most of the time, i was explaining the concepts to him after class.so last year he graduated, and took a job, We both used to expect a decent salary amount, say x (with me having a little ego that i expect certainly more than him, say x+20% ), but he took a job for half that number , say x/2.
After 1 increment and 1 job shift in 1.5 years, he has now successfully achieved package greater than x. I on the other hand, being still at college and with a lot of bad internship experiences now feel that i won't be getting even x/3 at my start no matter what.
- There is also this thing about people going into more of a management and other non tech roles once they start growing in this field. Why? What did they realized? I am sure not everyone of them would have hit this realization that tech is not what they want to do (which i can't understand why). Maybe its the money and/or happy life expectations?
i have started to feel dumb for not being able to think innovative new ideas and being an average mind :/
And about the happy life, so far its not much happiness for me, and am confused.
I am grateful about the usual things i have (healthy middle class parents, working body, roof , food,etc) , unhappy about the things i don't and see with others (more money, materialistic assets, confidence, siblings, social life, love life, etc) and that's it.
From what i understood of 21 years on this earth is that everyone is running to achieve that list of their desires and wants to move them from todo to done, like trello task. If you can't then keep fighting to achieve or grudgingly accept the fact that you couldn't and be happy about it.
So is that it? That's your happy life goals?2
Man, I think teaching is sooo hard...
it seems I can only start from two points: or I suppose the person is rock dumb and start sentences like "you know what top means right?"
(this is especially true because I'm not in a English speaking country and all of my references are in English (cuz since I learned it, I think it's easier to find good content in English))
or I go like:
"you only have to create a branch with the feature, the a class that implements the X interface to do this"
when the person doesn't even know how to make a function.
And now, I could convince the boss git is important and we should use it (I'm a intern). Result is: I need to teach git (git above all things, I have to teach git) to the other intern because the two interns will be responsible for taking care of the repos.
Not saying that I will fuck up, but leaving the repos to the interns, is this really a good idea 😂4
I saw a video on tiktok a couple days ago that had a pretty interesting opinion. The guy said that we should stop creating programming languages and stick to only a couple.
His main point was because with all these different programming languages, there is different syntaxes the programmer has to learn. Even some of the universal syntaxes are different in some languages. For example, in Rust, to print something you use “println!(...);”
He said this is counter productive because in a majority of other programming languages, the ! Means negation. He also said something about Golang also having some of those syntax problems but I can’t remember exactly.
His point was that if we stuck to a single syntax, then we could spend more time doing productive stuff and less time relearning how to do stuff with different syntax. For example, in mathematics all symbols have pretty much the same meaning across the field. An equals sign will always mean the same thing.
What do u guys think? I thought it was an interesting opinion and I think I agree to some degree . I’ll post the link to the video if I find it again25
Meditation. Or Awareness Meditation to be precise. It enables me to regain control over my mind, because I get distracted really fast. It really helps sorting things out, taking a step back and getting an overview where I actually am and if what I'm doing right now is actually relevant/has priority. I mostly find that it's not, so I have to return to the important stuff.
For those interested: meditation sounds weird, even obvious at first or you just don't get what's it all about. You actually have to practice meditation for a long time and study the concepts until you start to understand what all these phrases and talking means. Behind them lies great wisdom/huge amount of concepts which is easily underestimated. So don't be frustrated too much if you don't feel it working right away. Be assured I've been there too. Also don't start with meditations like 'just stop thinking or think nothing' because in my opinion this is highly complex shit and frustrating at first. Start with awareness or breathing meditations or even get an app to support your daily habit.1
I'm not sure where I'm going with this.
Writing open source can be so sad sometimes.
I would like to think of the internet as a place where people can find people, where everyone counts, but that can't be farther from the truth.
When I check a user's profile in devrant and see that they have a github profile, that's an immediate click for me.
But it usually comes with the sad realization that they have dozens of starless projects.
Many stars are not a guarantee of a good project, but 0-3 stars definitely means no one gives two shit about that (except maybe a couple of friends).
I'm totally ignorant when it comes to networking, and presenting a project you've done to communities of said language.
In fact, I tend to dislike communities because there's a lot of assholes in a lot of them, and sometimes, assholes that have more time in a community tend to be taken more seriously when disputes happen.
So I tried to stay away of them so far, but maybe I should engage and just call people on their shit regardless of the danger of getting banned, until I find that community where people are the least assholish.
Even then, I distrust the success rate of that, because I imagine there's a lot of devs out there, so when you join a community, what you notice is that there's a lot of noise so you end up becoming invisible because of that noise.
I'm not even sure of any of the things I'm saying here...3
I have 4 years professional experience at a small shop working on a web application for property and liability insurance. The application is ASP.NET with C# as the code-behind. I have a BCS and will finish my MSIS fall 2017. I have no idea why I have the degrees. I know that when I enrolled, it seemed like they would be a nice addition to an otherwise empty resume. I was lucky enough to land my first and only development job during my sophomore year of my undergraduate program. Is this enough experience to land a new job?
I feel like I'm learning nothing at my current job. The specs that come in seem very vague to me. When asked for clarification, there is often push back, and I don't know whether that's because I don't have enough experience to parse what the client means in the two sentence spec I got or if it's because the client does not actually know what they want.
I hate my current job. My productivity is low because I spend more time trying to figure out what the client wants and analyzing an 8 year old system that has 0 documentation. I know some of you will just say, "Suck it up" at this point, but I really want another job. The only thing I like about this job is that it's 100% remote. It also pays $60k a year, so a replacement should be at least that salary.
Most postings I see require professional experience of 5 years or more, and knowledge of other frameworks. I can work on getting knowledge of the other frameworks, but will have no professional experience with them. I don't live in an area with a lot of software development jobs, and the ones I see are for non-IT organizations that want 1 person to run a distributed system from 10 or more locations. A hospital system out here wants to pay $30k a year for a guy to be both software developer for new tools as well as the helpdesk and IT support guy that's on-call for four locations in the county. I made more than that before I got into the development industry, for less work, and would rather leave than settle for something like that.
I've thought about moving to somewhere near San Francisco or San Jose, but I have my daughter to think about. I have joint custody of her, and would have to give that up in order to move out of the county.
I like programming and using it to solve problems. I like designing architectures and how all the components will interface. I like designing and normalizing databases. I like taking part in coding competitions for employers that are well-known (Amazon, Facebook, Uber, Twitch, etc.), even though I often just place middle of the pack. When that happens, I feel like I'm an imposter in this industry.
I think I have the most fun just working on small projects for personal use. My latest is an assistant calculator for the game Transport Fever to figure out cargo throughputs per annum based on the in-game timing information. Past projects have also been small. Ones I could use in a portfolio are a sudoku solver desktop application, PC/Web game in Unity that is a 3D FPS remake of Duck Hunt that allows open world exploration but locks the camera's viewpoint for shooting events, and a building assistant for Rome II: Total War that maps out all the bonuses/perks of user-specified building combinations in provinces so users can record their long term building plans without using all their turns to see the final results.
I seem to be an unproductive, average developer who dabbles in projects here and there.
This is what I want from other Ranters. Just say something. I don't care if it is, "Suck it up and get better." It could be your tips for finding and securing a new position. It could even be empathy, if such a thing exists on the Internet. Whatever you want, just say something that will help get me thinking of what the next steps in my career should be.1
Why do I always get attached to dead/dying platforms 😖😫😭
I mean, I got the PSP Go a mere year before devs dropped support. (Still awesome for emulation because of the physical buttons)
I was really interested in windows phone for a while that I almost bit the bullet and bought it.(you obviously know what happened to the beloved windows phone platform)
And now suddenly a blackberry passport video pops up on my YouTube recommended feed and now I really want one.
The problem is the lack of apps, I was hopeful because it supported android runtime.
Then my hopes were crushed after I knew that its based off KitKat.
Which means one of my favorite apps doesn't work there (my beloved termux, I get a boner whenever I think about using it with an actual keyboard 😂)
Should i just bite the bullet? I'm too broke and that 200$ is kinda of a major purchase for me (I'm 17 in a third world country, so the piggy bank is empty AF)
God, why do I always get introduced to platforms too late...6
Heyyy DevRant Fam! :D, hope everyone is doing very well today! i would love to get some input/advice from my fellow developer friends here today... so Milo has gotten himself into a sticky situation... So recently i had a little opportunity to get some mentor-ship or internship through a family friend, and im sooo excited but nervous at the same time.. i sometimes think to myself am i really 'good enough for such a position'?? but however since I've never really experienced this sort of work, whats their to lose? or is this a bad way too think about it? :D
so ladies and gents, I'm really interested in the stock market and that sort of finance, and i think id be a good fit to build tools for traders, if i cannot get into that sort of position, why not work back office and have more of a support role? I'm always very happy to work my way up as I'm highly motivated!, however in the case that i manage to get into such a position, I'd love to know, what sort of things do i need know to be able to land such a position? if you can give me any tips or advice id be extremely grateful! :D
If you have managed to get this far into my post, I'd love to say thank you so much! and i really apologize for rambling on... i generally always do that.... and also i want to say thank you so much for taking the time to read my question <3 really means a lot to me!
just quick note letting everyone know as a hobby project I'm building a little list app where i can save my favorite stock tickers/symbols into a list and see the price changes over time (through alphavantage's API) :D
Milo <3 :-)
I spent 2 hours in an agile workshop with the "I do not think it means, what you think it means" guy.
When finished I could swear that if you asked the people what is agile, they would start crying.
Hi, my manager is leaving soon. I’ve only been here for short of 2 years and I’ve been promoted once already. It has come time to hire another dev. My director asked me to think about what I want for my career and how to hire the right person. I don’t want to become a manager if that means to stop coding and building stuff. Any advice or experiences you guys have had with this? I’m supposed to have a catchup with my director and he told me to think about it, but I only can think in terms of Problem-Solution. Not in abstract strategic career positioning or team management etc.4
got employed as web developer, had to make an app for test, so i made simple PWA, you can search videos and you have related videos on the side, basically search videos and watch them with simple list of related videos on the side.
idk how i ended up being tester and bug hunter in this huge ass pile of spaghetti extravaganza.
all i do is wasting my talent on hunting and resolving bugs on a legacy-code apps, don't remember when was last time i actually wrote some feature, oh yeah i do, last month but that was refactoring/fixing.
so i am stuck on weird tech stack someone build with shovel, feels like they were having that famous golden hammer.
what interests me is something i will never do at this company and still i am trying to help them to fix the app to have better product.
It is hard when you feel like you are third and last person in whole company that cares about actual product, rest of devs just fixing things with quick workarounds, hacks and lousy patches.
I really tried, I did, I was excited as I saw opportunity to one up the product but got stuck with the rest of the devs fixing bugs instead of fixing the whole codebase, I tried to introduced improvements but we don't have time cause fixing bugs means happy customers, better codebase takes more time and means impatient customers are unhappy!
I think it is time to sail away.
So folks, any thoughts or feelings?1
So the next Flutter event is on December 4th which means Flutter 1.0 is around the corner. Flutter is amazing with a very neat idea it has ReactJS like state management and everything is a Widget even the app itself. So i was thinking what else could we expect? React Native has Flutter, but what about React JS? I think Google might introduce a Competitor for ReactJS something like Flutter Web or FlutterJS which can work on parallel/similar to Flutter but for the web of course, and also maybe give some news on the Fuchsia. What do you think? :)5
Why do people try to answer questions they don't even know what mean...
I want to use a package that's made for nodejs and it's using one of the core module of nodejs (http), so that's a problem because react-native doesn't have that module and I can't just simply install it (it won't work), so I search the web in the quest for a solution maybe a drop-in replacement or a polifill or something, I got to this question that's exactly what I would ask if I were to do the question myself https://stackoverflow.com/questions... asking for a polyfill to use http module in react-native, and the only answer is from a guy that I don't think he even knows what he is talking about, his answer don't make any sense with relation to the question and doesn't even address package http nor polyfill so obviously he didn't even know what the title of the question means...
If you don't fucking know something, just stay fucking silent don't reply with giberish stuff that don't have nothing to do with what people are asking. You don't have know it all, don't feel you have to... and don't try to answer stuff you don't even know.4
It all started on a nice summer afternoon. I was minding my own business just using my wonderful laptop with Windows 10 software installed. Then I woke up and realized the truth. I am sick of the scams, the lies, and the games. Today you will all see the same colors as me.
Most of you are probably on a Microsoft device and have had problems with it. A great example of Microsoft's failure is the line of phones they attempted to market. I was forced to own one for a period of time and it is absolute agony. Never force this way of life on another human being. While we are here, why the fuck is Optifine only available for Java Minecraft. Why even have two versions of the game when they cost the same?
These petty offenses are nothing compared to what I am about to tell you. As we all know, Bill Gates is friends with Mark Zuccerberg. Mark is known for his cult of reptile info scammers. Just this association alone is a red flag. This means that Bill Gates is a reptile as well. Reptiles only trust other reptiles.
These "people" are lying to us! Bill Gates just wants you to think he stepped down so he doesn't get the hate and shunning that comes with liking Microsoft. It was just an excuse to get his cult followers to do his job for him so he could run the new world order and the pedophile ring that he co-owns with Jeffrey Epstein. You think Satya Nadella is the "New CEO"?! Bullshit. He is just another Microsoft fleshlight.
Not only is Bill a disgusting liar, but he predicts the future and uses it to his advantage. This is how he has built his cult following and his multi-company empire.
You people need to wake the fuck up and boycott Microsoft. You are all being subliminally brainwashed into thinking it's okay and that "It's just the software" NO. Stop supporting pedophiles. Stop supporting reptiles. Stop supporting shitty products, and STOP LICKING THE CORPORATE BOOT. In conclusion, fuck Microsoft.8
You know you have to deal with annoying things when you take on a guard duty role and yes, we signed up for it because of the mullah.
However, you also want to do this with a reliable and robust monitoring and alerting systemthat you can depend on! And no i am not going to advertise a product for this... What i will tell you is which one to avoid.
Meet Quest "Foglight" ... It does EVERYTHING! It monitors, it alerts, it does trend watching it does fancy shmancy graphics, it does reporting, it is very extendable... WAUW, right! right?
Well, if you were stuck somewhere in 2005-2010 maybe... But this fucklight is cutting short on EVERYTHING
Today , i got called up at 3:30 in the morning (i am typing this after the incident) because this shit of a system has "HIgh Availability" by basically letting the FMS server suck each others jaggons and hope it somehow respons. This is a sort of keepalived thing, but on proprietary java tech..
Oh, yes, it's written on java and... yes.. Java 6
This means that, effectively we are running RHEL5 machines (yes, RHEL 5!!!) because something more modern in place? nope.
I have no idea anymore what i am ranting about, i'm tired, i'm tired of this shit, i'm tired of getting called up just because of some dude has been cussing up a sales representative, sucked each others jaggons and pushed the federal goverment with a shit solution for almost a decade now.
Fuck Quest software, because did you really think you would get enterprise level support for an enterprise product which you payed enterprise euro's for it? You are so naive, how cute...
And consequently : Fuck Dell and Good job Dell.. For purchasing quest software, mess around with it, and then dump it back to the market... Srsly Dell , you were like me when i had this hot ass chick as a girlfriend but later seemed to be too crazy to justifiably tolerate compared to her hotness. Dump it like it's trump.
Oh, and, wauw! Foglight graced us with a successful startup process after .. what.. 6 times restarting? In 2 hours... With 12 CPU's and 128 GB ram and .... oh fuck this you don't deserve such resources.4
Those who are Software Engineers in the Bay Area or other places with high cost of living (COL), do you think living in that area is worth it? Or would you rather work remote somewhere that's cheaper even if that means taking a slight pay cut?
I was born and raised in the Bay Area and want to own a home. The Peninsula is just so fucking expensive. No way I want to shell out 500k for a condo with a $500 a month HOA fee. What gives? I'm not looking to make money on a home I'm looking to have a place I can call my own.1
<p>Do you know how clean tap water is? The answer to that question largely depends on where you live, but thinking about it is always a good idea. Drinking water is often contaminated with organic compounds, minerals, chlorine, and chemicals left over from the water treatment process. If you need cleaner water, the easiest way to do this is to get a filtered jug. This guide of <a href="https://womenselections.com/best-wa...">what is the best water filter pitcher</a> will help you find the best water filter jug for your needs and budget.</p>
<p>Filtered launchers are very diverse. To help the reader, we limit ourselves to a few outbreaks through testing and research. We tested various models ourselves, we examined a large number of launcher classifications and confirmed our own findings.</p>
<p><a href="https://ibb.co/19CRS7S"><img src="https://i.ibb.co/55Qs7G7/..." alt="best-water-filter-pitcher" border="0" /></a></p>
<p><strong>Water filter pitcher filter type</strong><br />The filter jug comes with various types of cartridges. Typically, only one type of cartridge can be used, so you cannot select the desired cartridge. The exception is if you select a brand that offers a choice between two cartridges. Each of these cases has its advantages.</p>
<p><strong>Carbon filtration</strong><br />Most cartridges use carbon and are particularly effective at filtering chlorine and its by-products, such as TTHM. These cartridges contain blocks of solid carbon or granular activated carbon (also called activated carbon). In both cases, carbon usually comes from coconut shells, but it can also be made from coal, brown coal, wood, or oil pitch. Carbon can be physically or chemically activated.</p>
<p>There are two ways to physically activate carbon. One is to heat the carbonized material to 450-900 degrees Celsius in an inert atmosphere. Usually nitrogen or argon is present. Alternatively, the manufacturer may use oxidation. In this case, the material is typically heated to 1200 degrees Celsius and exposed to oxygen.</p>
<p>Chemical activation involves the injection of various chemicals into the material. The most common chemicals are hydroxide, sodium hydroxide, zinc chloride, calcium chloride. These chemicals facilitate carbon activation. This means that the process takes less time. However, the material must be heated to 450-900 degrees Celsius.</p>
<p>As the water passes through the cartridge filter, the carbon absorbs liquid and gaseous impurities. Due to the highly porous surface and physical form of activated carbon, one gram has an absorbent surface of 32,000 square feet. Still, it becomes saturated with impurities. If this occurs, you will need to replace the cartridge.</p>
<p><strong>In the conclusion</strong><br />If you are considering buying a pitcher filter as the only filter in your home, you should know what your water contains before you buy it. Today, many launchers have successfully removed most of the harmful contaminants. On the other hand, there are still bottles that can only filter out basic contaminants. As always, I recommend that you test your water before purchasing a pitcher.</p>
<p>Whatever it is, healthy water should always be a priority. I hope my comments, suggestions and guidelines will help you buy the best <a href="https://arizonawet.arizona.edu/user...">water filter pitcher review</a>. However, if you don't think the launcher is a viable option and have considered all of the options, please feel free to visit our website. He uploaded many other honest reviews like this. I am sure you will find the best option.</p>
Top 5 Reasons for Not Discussing Weird Topics in Your Graduate Admission Essay
Knowing the top five reasons for not discussing weird topics in your graduate admission essay is very important. There is really no strict requirement about what kind of topic you use, as long as you can discuss it effectively. However, choosing weird topics may not really work for you, especially if it’s a very controversial or sensitive one. The following are the top five reasons why you should avoid discussing weird topics in your essay.
Reason #1: Weird topics are weird.
First off, weird topics are exactly that, weird. The last thing you want to do is weird out your graduate school admission panel, which is almost a sure way of getting yourself that polite rejection letter that every applicant dreads of receiving.
One of the main important points to remember is to think of your audience when writing your graduate admission essay. This audience will be composed of tenured professors, and probably younger teachers closer to your own age. Although it is a good idea not to tailor your essay according to what you think they want to hear, it’s best to stick to a topic that will make the panel want to get to know you more. You can do this by putting yourself in the admission officer’s shoes and trying to feel what your reaction would be with a particular topic you have in mind. Being creative is good, but to any audience, weird is weird, and most audiences will not know how to react to a weird admission essay.
Reason #2: Weird topics may reflect your personality in a bad way.
Weird topics make you look weird, or worse. You may think that a weird topic is the same as a creative topic, something that most experts on admissions officers urge applicants to use. With a weird topic, you can easily make the jump from being creative to just plain strange or worse, someone with an emotional or personality problem. Weird topics, when discussed ineffectively, are bad topics, and can be anything from the death of a pet, recent religious epiphanies, and even parent bashing. These topics are the last topics that can paint you in a good light so avoid these and other similar topics.
Reason #3: Weird topics may not represent the real you.
Weird topics will not paint the real you, unless you are naturally weird. If you really think that being a little bit off will pay off, then by all means do so. But if you want to appear as normal and as emotionally healthy as possible, save the strange stories for Halloween night.
Reason #4: Weird topics may seem too informal.
Weird topics can get too informal. You can be informal but you need to look normal as well in order to avoid appearing irreverent. Some may disagree with this, but often the only way to get on your admission panel’s good side is to tread on the middle ground arefully, and not be too stiff and prudish but not be too loose either.
Reason #5: Weird topics may confuse the readers.
While most schools allow their applicants free reign when it comes to writing an admissions essay, you can do your self a lot of good by treading on the middle ground. Avoid weird or strange topics if you can. A weird topic will put your readers in a place where they may not understand you. And in a process where getting to know you as a person is the main objective, this move will definitely have an effect on whether you get accepted or not. Knowing what to write in a graduate school admission essay is fairly easy, especially if the school provides you with a set of questions, known as prompts as your guide. As long as you already have the other requirements such as the right grade point average, recommendation letters, program of study and the like, you can start working on your essay. But if your still not sure whether it good idea to write essay by yourself. You can find tons of great quality writing services such as https://uk-essays.com/research-pape.... At such a websites you’ll easily find help from from people who already have considerable experience in writing a wide variety of essays. They will gladly help in any issue that makes you difficult.
(tldr: are foriegn keys good/bad? Can you give a simple example of a situation where foriegn keys were the only and/or best solution?)
i have been recently trying to make some apps and their databases , so i decided to give a deeper look to sql and its queries.
I am a little confused and wanted to know more about foreign keys , joins and this particular db designing technique i use.
Can anyone explain me about them in a simpler way?
Firstly i wanted to show you this not much unheard tecnique of making relations that i find very useful( i guess its called toxi technique) :
In this , we use an extra table for joining 2 tables . For eg, if we have a table of questions and we have a table of tags then we should also have a table of relation called relation which will be mapping the the tags with questions through their primary IDs this way we can search all the questions by using tag name and we can also show multiple tags for a question just like stackoverflow does.
Now am not sure which could be a possibile situation when i need a foriegn key. In this particular example, both questions and tags are joined via what i say as "soft link" and this makes it very scalable and both easy to add both questions and new tags.
From what i learned about foriegn keys, it marks a mandatory one directional relation between 2 tables (or as i say "hard a to b" link)
Firstly i don't understand how i could use foriegn key to map multiple tags with a question. Does that mean it will always going to make a 1to1 relationship between 2 tables( i have yet to understand what 11 1mant or many many relations arr, not sure if my terminology is correct)
Secondly it poses super difficulty and differences in logics for adding either a tag or question, don't you think?
Like one table (say question) is having a foreign key of tags ID then the the questions table is completely independent of tag entries.
Its insertion/updation/deletion/creation of entries doesn't affect the tags table. but for tag table we cannot modify a particular tag or delete a tag without making without causing harm to its associated question entries.
if we have to delete a particular tag then we have to delete all its associated questions with that this means this is rather a bad thing to use for making tables isn't it?
I m just so confused regarding foriegn keys , joins and this toxi approach. Maybe my example of stack overflow tag/questions is wrong wrt to foreign key. But then i would like to know an example where it is useful5