Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "hard work made easy"
-
I tutor people who want to program, I don't ask anything for it, money wise, if they use my house as a learning space I may ask them to bring cookies or a pizza or something but on the whole I do it to help others learn who want to.
Now this in of itself is perfectly fine, I don't get financially screwed over or anything, but...
Fuck me if some students are horrendous!
To the best of my knowledge I've agreed to work with and help seven individuals, four female three male.
One male student never once began the study work and just repeatedly offered excuses and wanted to talk to me about how he'd screwed his life up. I mean that's unfortunate, but I'm not a people person, I don't really feel emotionally engaged with a relative stranger who quite openly admits they got addicted to porn and wasted two years furiously masturbating. Which is WAY more than I needed to know and made me more than a little uncomfortable. Ultimately lack of actually even starting the basic exercises I blocked him and stopped wasting my time.
The second dude I spoke to for exactly 48 hours before he wanted to smash my face in. Now, he was Indian (the geographical India not native American) and this is important, because he was a friend of a friend and I agreed to tutor however he was more interested in telling me how the Brits owed India reparations, which, being Scottish, I felt if anyone was owed reparations first, it's us, which he didn't take kindly too (something about the phrase "we've been fucked, longer and harder than you ever were and we don't demand reparations" didn't endear me any).
But again likewise, he wanted to talk about politics and proving he was a someone "I've been threatened in very real world ways, by some really bad people" didn't impress me, and I demonstrated my disinterest with "and I was set on fire once cos the college kids didn't like me".
He wouldn't practice, was constantly interested in bigging himself up, he was aggressive, confrontational and condescending, so I told him he was a dick, I wasn't interested in helping him and he can help himself. Last I heard he wasn't in the country anymore.
The third guy... Absolute waste of time... We were in the same computer science college class, I went to university and did more, he dossed around and a few years later went into design and found he wanted to program and got in touch. He completes the code schools courses and understandably doesn't quite know what to do next, so he asks a few questions and declares he wants to learn full stack web development. Quickly. I say it isn't easy especially if it's your first real project but if one is determined, it isn't impossible.
This guy was 30 and wanted to retire at 35 and so time was of the essence. I'm up for the challenge, and so because he only knows JavaScript (including prototypes, callbacks and events) I tell him about nodejs and explain that it's a little more tricky but it does mean he can learn all the basis without learning another language.
About six months of sporadic development where I send him exercises and quizzes to try, more often than not he'd answer with "I don't know" after me repeatedly saying "if you don't know, type the program out and study what it does then try to see why!".
The excuses became predicable, couldn't study, playing soccer, couldn't study watching bake off, couldn't study, couldn't study.
Eventually he buys a book on the mean stack and I agree to go through it chapter by chapter with him, and on one particular chapter where I'm trying to help him, he keeps interrupting with "so could I apply for this job?" "What about this job?" And it's getting frustrating cos I'm trying to hold my code and his in my head and come up with a real world analogy to explain a concept and he finally interrupts with "would your company take me on?"
I'm done.
"Do you want the honest unabridged truth?"
"Yes, I'd really like to know what I need to do!"
"You are learning JavaScript, and trying to also learn computer science techniques and terms all at the same time. Frankly, to the industry, you know nothing. A C developer with a PHD was interviewed and upon leaving the office was made a laughing stock of because he seemed to not know the difference between pass by value and pass by reference. You'd be laughed right out the building because as of right now, you know nothing. You don't. Now how you respond to this critique is your choice, you can either admit what I'm saying is true and put some fucking effort into studying cos I'm putting more effort into teaching than you are studying, or you can take what I'm saying as a full on attack, give up and think of me as the bad guy. Your choice, if you are ready to really study, you can text me in the morning for now I'm going to bed."
The next day I got a text "I was thinking about what you said and... I think I'm not going to bother with this full stack stuff it's just too hard, thought you should know."23 -
Fucking intern.
While I was working next to her a couple weeks back, she spent half her time on social media, playing Candy Crush, or talking with her friend. She also left early almost every day.
I had given her a project to do (object crud + ui), and helped her through it. She made pretty abysmal progress in a week. I ended up finishing it for her by rewriting basically all of her code (every single line except some function names, lone `end` or `}` statements, a few var declarations, blank lines, plus a couple of comments she copied over from my code).
This week I gave her a super easy project to do. It amounts to copying four files (which I listed), rename a few things to be Y instead of X, and insert two lines of code (which I provided) to hook it up. Everything after that just works. It should have taken her ... okay, maybe a few hours because she's slow and new to the language. but it would have taken me five to ten minutes, plus five minutes of testing.
She has spent THREE FUCKING DAYS ON THIS AND SHE'S STILL NOT DONE. SHE'S BLOODY USELESS!
She has kept not pulling changes and complaining that things are broken. Despite me telling her every time I push changes that affect her work (on. my. branch. ergh!)
She keeps not reading or not understanding even the simplest of things. I feel like MojoJojo every time I talk to her because of how often I repeat myself and say the same things again and again.
Now she's extremely confused about migrations. She keeps trying to revert a drop_table migration that she just wrote so she can re-create the table differently. Instead of, you know, just reverting back to her migration that creates the table. it's one migration further.
Migrations are bloody simple. they're one-step changes to the database, run in order. if you want to make a change to something you did a few steps back, you roll back those migrations, edit your shit, and run them again. so bloody difficult!
`rails db:rollback && rails db:rollback`
Edit file
`rails db:migrate`
So. hard.
I explained this to her very simply, gave her the commands to copy/paste, ... and she still can't figure it out. She's fucking useless.
It took me ten minutes to walk her though it on a screen share. TEN FREAKING MINUTES.
She hasn't finished a damned fucking thing in three weeks. She's also taking interview calls while working on this, so I know she totally doesn't care.
... Just.
Fucking hell.
USELESS FUCKING PEOPLE!35 -
Call me old-fashioned, but... I kinda liked it back in the day, when Microsoft made proprietary software, the Community made free software and everyone's "cui bono" was quite easy to answer - even those corporations involved in FLOSS did have a clear way to finance themselves.
Now, we have Microsoft coming into open source, seemingly making projects better and offering more and more "free" stuff.
You know.
"Free" Windows 10.
"Free" SaaS Office.
"Free" "Private" Repos on Github.
In general - what happened to clear and concise "I give you money, you give me stuff" capitalism like we had it in the 2000s?
I'd rather pay 20 bucks for a game on Steam than get it "free" and with ads or microtransactions - yet, many games, especially mobile, don't even offer me that option. It wouldn't be that hard now, would it?
The same goes for software. That Canonical would need to fuck their users over after Ubuntu One went to shit was obvious - they didn't offer the kind of commercial/enterprise OS'es that Redhat or SuSE sell.
What people seem to forget is that everyone needs to make a profit somehow. You don't get "free" stuff. Even the volunteers in the Open Source Community get something out of it - an opportunity to pad their CV at least, if nothing else.
Nowadays, software manufacturers have the same legitimacy as the "free" financial "advisors" you find at banks - and who could be dumb enough to trust them? Oh yeah: Almost the entire fucking society is who.
But then again, sell something and noone will want it - because they all want it for free, with annoying, privacy-invading ads or with equally annoying microtransactions, or financing based on commission - so you don't only pay ONCE, you pay until you realize you got fucked over and quit.
Capitalism used to work until all those idiots stepped in. How the fuck don't people realize that there's no free lunch in life? When have we stopped being functional people and turned into idiots.
Even worse: Those idiots think that they're entitled to something! They, who volunteered to become merchandise instead of customers, think that they have rights! Do cattle have rights? Nope. They get their "free" hay everyday and I get to buy beef, that's how it works. Moo!
Hell, they are surprised when they get fucked over by bank salespeople or their data stolen by corporations, intelligence agencies or something... What did they expect, goodwill?
Can we please make Adam Smith mandatory reading in school?! I mean, give people a chance to understand capitalism? The nonexistent "goodwill" of traders in general?8 -
Got a CTO at my Unity job that's younger than me, which by itself is fine, but the only reason this guy was put into that position was because the previous CTO left the company at the time where I was relatively new and he is the person most familiar with the codebase of our primary project than I was at the time.
I understood the decision at the time, but still, having a position of power being handed to them just as a matter of inheritance doesn't command my respect. Nevertheless, I withheld my judgement at the time to see how his leadership goes.
Not even 1 year in and this young CTO started making jabs at me, calling my code hard to read and incomprehensible, to my face, in front of everybody else.
Motherfucker, I don't find his code easy to read either but I went out of my way to frequently ask him, the previous CTO and other teammates to clarify what they wrote here and there. He on the other, made no attempt to ask me for clarification and instead waited until company meetings to air these grievances.
Our boss started to ask me to follow SOLID principles (even though he can't recite what that acronym means) due to complaint from the CTO guy, even though the CTO guy doesn't even follow SOLID himself! But I took the higher road and didn't flip it right back on him.
What I did propose in return though, is that the dev team start using pull requests and have a code review process if the CTO wants to sign off on everything that gets in the codebase. Sounds reasonable enough, right? Not for this guy! He immediately starts complaining that reviewing pull requests would be more work for him. Motherfucker, you refused to go to my table to ask for clarifications about my code yet still want to understand what goes on, then do code review.
It was at this point that I realized that this guy doesn't actually want me to write good, clear code. He wants me to write code HIS way so that he can understand. Yeah okay, I can accept that idea in isolation. Some open-source projects require contributors to follow certain coding convention to make the maintainers' job easier too. One project that immediately came to mind is "In-game Debug Console for Unity 3D" (disclosure: I am a contributor to this project)
But guess what?
THIS COMPANY DOESN'T HAVE A FREAKING CODING CONVENTION. NOT WRITTEN DOWN ANYWHERE. NOT EVEN A VOCAL ONE.
What this CTO guy wants from me is a complete blackbox.
To all fellow devs out there, I hope you don't work with a CTO like this, or become one.5 -
Grr the feeling when one of your interviewers has a hard-on for trying to find ways to sink your boat.
Went to a job interview yesterday during my lunch break for a mid level dev job in central London , i have been trying to transition from a junior role.
First were two senior devs , that went quiet well...
Next up was the tech lead and a team lead, lets call the latter Mc-douche for some problem
The tech lead was fine, very relaxed and clam guy more interested in seeing the logic of my answers and questions as to why i did certain things in this or that manner....
Mc-douche, he would always try to find something wrong then smile smugly and do that sideways head waggle thing
His tech lead is like " yup that's correct"
But he would be like " yeeess but you didn't think about bla bla bla" then talk about shit not even present in the context of the question
Ah also he would ask a question then cut me off as soon as I begin to say that i didnt mention or take into account x or y even though literally my next sentence is about address those details he wanted.
let me fucking finish you dickbag 😡
Had a js question, simple stuff about dom manipulation, told not to bother with code... yet McD starts asking me to write the code for it....managed it , quite easy stuff
Then a sql and db test , again technlead was happy with the answers and the logic am approaching the question when writing my query, yet mc d Is bitching about SQL syntax....
Ok fine, i made a simple mistake, I forgot and used WHERE instead of HAVING in a group by but really?! Thats his focus ?!
Most devs I know look up syntax to do stuff , they focus on their logic first the do the impl.
Then a general question on some math and how i would code to impl a solution on paper
That was a 20 mins one, the question said they didn't expect me to finish it totally so
I approached it like an exam question.
First
I focussed on my general flow of my process, listing out each step.
Then elaborated each step with pseudo code showing my logic for each of the key steps.
Then went deeper and started on some of the classes and methods , was about to finish before it was time up.
Mc douch went through my solution
And grudgingly admitted my logic was "robust enough" it was like he really had to yank that deep out of his colon.
I didn't really respond to any of his rudeness throughout the whole interview,i either smiled politely or put on a keen looking poker face.
Really felt awful the rest of the day, skipped the gym and went home after work, really sucks to have a hostile interviewer.
Pretty sure i wont be hearing anything good from them even though the three other interviewers were happy with me I felt.4 -
I don't know if I'm being pranked or not, but I work with my boss and he has the strangest way of doing things.
- Only use PHP
- Keep error_reporting off (for development), Site cannot function if they are on.
- 20,000 lines of functions in a single file, 50% of which was unused, mostly repeated code that could have been reduced massively.
- Zero Code Comments
- Inconsistent variable names, function names, file names -- I was literally project searching for months to find things.
- There is nothing close to a normalized SQL Database, column ID names can't even stay consistent.
- Every query is done with a mysqli wrapper to use legacy mysql functions.
- Most used function is to escape stirngs
- Type-hinting is too strict for the code.
- Most files packed with Inline CSS, JavaScript and PHP - we don't want to use an external file otherwise we'd have to open two of them.
- Do not use a package manger composer because he doesn't have it installed.. Though I told him it's easy on any platform and I'll explain it.
- He downloads a few composer packages he likes and drag/drop them into random folder.
- Uses $_GET to set values and pass them around like a message contianer.
- One file is 6000 lines which is a giant if statement with somewhere close to 7 levels deep of recursion.
- Never removes his old code that bloats things.
- Has functions from a decade ago he would like to save to use some day. Just regular, plain old, PHP functions.
- Always wants to build things from scratch, and re-using a lot of his code that is honestly a weird way of doing almost everything.
- Using CodeIntel, Mess Detectors, Error Detectors is not good or useful.
- Would not deploy to production through any tool I setup, though I was told to. Instead he wrote bash scripts that still make me nervous.
- Often tells me to make something modern/great (reinventing a wheel) and then ends up saying, "I think I'd do it this way... Referes to his code 5 years ago".
- Using isset() breaks things.
- Tens of thousands of undefined variables exist because arrays are creates like $this[][][] = 5;
- Understanding the naming of functions required me to write several documents.
- I had to use #region tags to find places in the code quicker since a router was about 2000 lines of if else statements.
- I used Todo Bookmark extensions in VSCode to mark and flag everything that's a bug.
- Gets upset if I add anything to .gitignore; I tried to tell him it ignores files we don't want, he is though it deleted them for a while.
- He would rather explain every line of code in a mammoth project that follows no human known patterns, includes files that overwrite global scope variables and wants has me do the documentation.
- Open to ideas but when I bring them up such as - This is what most standards suggest, here's a literal example of exactly what you want but easier - He will passively decide against it and end up working on tedious things not very necessary for project release dates.
- On another project I try to write code but he wants to go over every single nook and cranny and stay on the phone the entire day as I watch his screen and Im trying to code.
I would like us all to do well but I do not consider him a programmer but a script-whippersnapper. I find myself trying to to debate the most basic of things (you shouldnt 777 every file), and I need all kinds of evidence before he will do something about it. We need "security" and all kinds of buzz words but I'm scared to death of this code. After several months its a nice place to work but I am convinced I'm being pranked or my boss has very little idea what he's doing. I've worked in a lot of disasters but nothing like this.
We are building an API, I could use something open source to help with anything from validations, routing, ACL but he ends up reinventing the wheel. I have never worked so slow, hindered and baffled at how I am supposed to build anything - nothing is stable, tested, and rarely logical. I suggested many things but he would rather have small talk and reason his way into using things he made.
I could fhave this project 50% done i a Node API i two weeks, pretty fast in a PHP or Python one, but we for reasons I have no idea would rather go slow and literally "build a framework". Two knuckleheads are going to build a PHP REST framework and compete with tested, tried and true open source tools by tens of millions?
I just wanted to rant because this drives me crazy. I have so much stress my neck and shoulder seems like a nerve is pinched. I don't understand what any of this means. I've never met someone who was wrong about so many things but believed they were right. I just don't know what to say so often on call I just say, 'uhh..'. It's like nothing anyone or any authority says matters, I don't know why he asks anything he's going to do things one way, a hard way, only that he can decipher. He's an owner, he's not worried about job security.13 -
!rant I need job advice. Please reason with me.
I am 26, got 2 years of experience in c# and unity3d.
I did some research and it turns out that the minimal paying average with my job/experience over the whole country is at least 300€ a month more than what i get payed currently.
I made a list of pros and cons, and am just not sure what would be smartest to do in the long run. Here is a list for both options, please chime in on me if you can!
Points for current job:
Permanent contract (hard to fire me etc.)
Get to make mostly mobile games but nothing really big
Fun small team whom i get along with (i am on the spectrum and can be hard to deal with social or costumer related things)
Rarely any overtime (i like to know my hours)
Easy but slow jobs (badly organized, drag on forever)
Rarely challenged and thus boring me
I get to shoot nerf guns at colleagues whenever
Low chance of a 300€/m pay increase (not worth it to boss, financials aren't that great but the company is promising)
Points for any other job:
Unknown working condittions
I am probably bad and uknowledgeable about any tool they give me to work with because my experience is so monotone
Start on short term contract again all over
At the least a 300€ net increase a month
Prob closer to home then 1h drive away
I get to learn new things but give up on games/apps as i know them
Probably get knowledgeable seniors
Probably end up in a bigger more serious company where i am just a number
I am bad in new social envirnoments, oh the angst is real
And a few things besides it are that i personally only have as goal to own my own house with my fiance as soon as i can. And this means i will need to take out a 200k loan or something along those lines, to be paid off over 30 years max.
This means that the permanent contract is very valuable in my eyes, but so is monthly pay increase.
I want to have fun in my job, i want to learn new things and better ways. But i also want to be able to say "enough" to something if it overwhelms me. I just know some things are not for me and i would mess up if i were made to do them. I fear that to not be an option in a big company. I would be forced out of my comfort zone without any regard for me or my learning curve.
Any advice is welcome. Please keep it general if you can so others can learn from this as well. Seniors advice will probably be helpfull to all starting programmers!10 -
I learnt something from every single project I made, but this one... it was really different, new language, new library, new hardware.
Problem:
there's an infopoint in a place, that was really hard to use (ball mouse over a monitor)
Solution:
make the screen be touch.
Developing the solution:
- after a bit of research I find out there's a library/project called OpenCV
- there are example programs that detect hands written in C++ (which I know) and Python (which I don't know)
- the whole infopoint works on a raspberry PI, with raspbian (I'm not new to linux, but it's somehow different, plus tons of customization)
So I spend like 3 weeks trying to understand how to make it work, at first, the webcam was on the TV and you could move the mouse just by shaking your hand, but it didn't work too well, so we tried making the webcam look at the screen and then calculate the differences between "no-hands" and "user-hand", but should have been calibrated, wasn't too precise... dropped solution.
put the webcam 30cm above the screen, let it just analyse a few centimeters of sight from the screen and it worked flawlessly, BUT it could just recognise the horizontal axis => had to rework the infopoint UI to make it dumb-easy
It all finally worked, I learnt python, openCV, a bit of photography
Then hated it all and decided to never do that again -
I HATE SURFACES SO FRICKING MUCH. OK, sure they're decent when they work. But the problem is that half the time our Surfaces here DON'T work. From not connecting to the network, to only one external screen working when docked, to shutting down due to overheating because Microsoft didn't put fans in them, to the battery getting too hot and bulging.... So. Many. Problems. It finally culminated this past weekend when I had to set up a Laptop 3. It already had a local AD profile set up, so I needed to reset it and let it autoprovision. Should be easy. Generally a half-hour or so job. I perform the reset, and it begins reinstalling Windows. Halfway through, it BSOD's with a NO_BOOT_MEDIA error. Great, now it's stuck in a boot loop. Tried several things to fix it. Nothing worked. Oh well, I may as well just do a clean install of Windows. I plug a flash drive into my PC, download the Media Creation Tool, and try to create an image. It goes through the lengthy process of downloading Windows, then begins creating the media. At 68% it just errors out with no explanation. Hmm. Strange. I try again. Same issue. Well, it's 5:15 on a Friday evening. I'm not staying at work. But the user needs this laptop Monday morning. Fine, I'll take it home and work on it over the weekend. At home, I use my personal PC to create a bootable USB drive. No hitches this time. I plug it into the laptop and boot from it. However, once I hit the Windows installation screen the keyboard stops working. The trackpad doesn't work. The touchscreen doesn't work. Weird, none of the other Surfaces had this issue. Fine, I'll use an external keyboard. Except Microsoft is brilliant and only put one USB-A port on the machine. BRILLIANT. Fortunately I have a USB hub so I plug that in. Now I can use a USB keyboard to proceed through Windows installation. However, when I get to the network connection stage no wireless networks come up. At this point I'm beginning to realize that the drivers which work fine when navigating the UEFI somehow don't work during Windows installation. Oh well. I proceed through setup and then install the drivers. But of course the machine hasn't autoprovisioned because it had no internet connection during setup. OK fine, I decide to reset it again. Surely that BSOD was just a fluke. Nope. Happens again. I again proceed through Windows installation and install the drivers. I decide to try a fresh installation *without* resetting first, thinking maybe whatever bug is causing the BSOD is also deleting the drivers. No dice. OK, I go Googling. Turns out this is a common issue. The Laptop 3 uses wonky drivers and the generic Windows installation drivers won't work right. This is ridiculous. Windows is made by Microsoft. Surface is made by Microsoft. And I'm supposed to believe that I can't even install Windows on the machine properly? Oh well, I'll try it. Apparently I need to extract the Laptop 3 drivers, convert the ESD install file to a WIM file, inject the drivers, then split the WIM file since it's now too big to fit on a FAT32 drive. I honestly didn't even expect this to work, but it did. I ran into quite a few more problems with autoprovisioning which required two more reinstallations, but I won't go into detail on that. All in all, I totaled up 9 hours on that laptop over the weekend. Suffice to say our organization is now looking very hard at DELL for our next machines.4
-
I'm really not sure. When I was 7-8 years old, I liked to view source in IE, then I somehow managed to use Javascript in the browser. First only some dumb opening of windows. And I liked Batch, so I made some files for copying, backup and stuff.
Then I got to PHP during the years from some online tutorial about making dynamic websites. My website was more static than stone, but yeah, I did page loading with PHP! Awful experience anyway, because I had to install Xampp, get it work and other stuff. 11 years old or so. (and I used Xampp only as a fileserver between laptop and desktop later, because.. PHP4... just no.)
As 12 years old or so I experienced my first World of Warcraft (vanilla) on a custom server in an internet cafe and I thought it's a singleplayer game. When I found out that no, I googled how to make my own server (hated multiplayer back then and loved good games with huge storylines). Failed miserably with ManGOS, got something to work with ArcEMU. There I learned some C++ basic stuff, which I hoped would helped me to fix some bugs. When I opened the code I was like: "Suuure." and left it like that. I learned what a MySQL database is, broke it like four times when I forgot WHERE and still rather played with websites i.e. html, css, js and optionally php when I wanted to repair a webpage for the server. With a friend we managed to get the server work via Hamachi, was fun, the server died too soon. Then I got ManGOS to work, but there wasn't really any interest to make a server anymore, just singleplayer for the lore. (big warcraft fan, don't kick me :D )
I think it was when I was 13y.o. I went to Delphi/Pascal course, which I liked a lot from the beginning, even managed to use my code on old Knoppix via Lazarus(Pascal). At this age I really liked thoae Flash games which were still common to see everywhere. So I downloaded .swfs, opened and tried to understand it. Managed to pull some stuff from it and rewrite in Pascal. Nope, never again that crap.
About the same time I got to Flash files I discovered Java. It was kind of popular back then, so I thought let's give it a try. I liked Flash more. Seriously. I've never seen so much repetitiveness and stupid styling of a code. I had either IDE for compiling C++ or Pascal or notepad! You think I wanted my code kicked all over the place in multiple folders and files? No.
So back to Pascal. I made some apps for my old hobby, was quite satisfied with the result (quiz like app), but it still wasn't the thing. And I really thought I'd like to study CS.
I started to love PHP because of phpBB forums I worked on as 15 y.o. I guess. At the same time I think there was an optional subject at school, again with Pascal. I hated the subject, teacher spoke some kind of gibberish I didn't really understand back then at all and now I find it only as a really stupid explanation of loops and strings.
So I started to hate Pascal subject, but not really the lang itself. Still I wanted something simpler and more portable. Then I got to Python as hm, 17y.o. I think and at the same time to C++ with DevC++. That was time when I was still deciding which lang to choose as my main one (still playing with website, database and js).
Then I decided that learning language from some teacher in a class seriously pisses me off and I don't want to experience it again. I choose Python, but still made some little scripts in C++, which is funny, because Python was considered only as a scripting lang back then.
I haven't really find a cross-platform framework for C++, which would: a) be easy to install b) not require VisualStudio PayForMe 20xy c) have nice license if I managed to make something nice and distribute it. I found Unity3D though, so I played with Blender for models, Audacity for music and C# for code. Only beautiful memories with Unity. I still haven't thought I'm a programmer back then.
For Python however I found Kivy and I was playing with it on a phone for about a year. Still I haven't really know what to do back then, so I thought... I like math, numbers, coding, but I want to avoid studying physics. Economics here I go!
Now I'm in my third year at Uni, should be writing thesis, study hard and what I do? Code like never before, contribute, work on a 3D tutorial and play with Blender. Still I don't really think about myself as a programmer, rather hobby-coder.
So, to answer the question: how did I learn to program? Bashing to shit until it behaved like I desired i.e. try-fail learning. I wouldn't choose a different path.2 -
rant="""
It's too many features for me to keep up with. And the client just bounces between this matrix of all the possible permutations of them, refusing to admit that he is asking for mutually exclusive behavior in more than one place. I have mentioned to him at least 12 times a year that there is too much going on, not organized, we need to simplify, prioritize, or we will have 100 half baked untested features.
Of course it is more or less made it out to be that this is all my fault, or at least it's hard not to feel that way when I say:
It will be a long time before X will be working, we need 25 other things first.;
Next day he asks:
Have you made any progress on X;
I reply: Now we need 24 things to be done at this rate it will be a month.;
He replies:
Ok but I need this yesterday. How about if you add a new feature Y that does everything X does without those 24 things?;
I reply: That will not work at all like X. Y is just X + 1 more feature.
He replies: Ok well I need Y so when you're done with X I need a way to do it like Y also. I just thought it'd be easier.
EASIER TO ADD MORE FUCKING FEATURES YEAH SURE THATS EASY AS FUCK YOU FUCK FUCK FUCK. He's a nice enough guy, pretty smart compared to my first few paying gigs, but wtf really? How do I come out and tell you I need 25 days and you ADD more work? This was one example.
IN TWO days he has added 12 features. And during the week has asked for 29 UI interfaces to be COMPLETELY different. This is becoming COMMONPLACE. Every week there is either a huge change, or a conversation like about that finds its way into the entire business flow inside an dout.
The worst thing is: I TOTALLY understand what he needs. I feel that HE doesn't. This weekend I spent literally HALF of his retainer on getting equipment into my hands to bring it back to find out it DOESNT WORK. Why aisn't HE doing this so I can finish the features from NOVEMBER that HE NEEDS in order to PROCESS SALES.
I've tried and tried but I just can't get through to this client what a tremendous waste of time his \"process\" is, for lack of a better word. Constant changes, contsant additions, lack of clarity, needless repetition and contradictions, constantly adding moonshot ideas to compete with every industry in the region, and not beta testing anything until something goes wrong.
Fuck this guy! His business is failing and I felt responsible for the longest time but it is clear to me that if I wanted to save his business I would have to ignore 95% of his feature requests. I ignore 50% now because of the stress in trying to determine which of the 3 different paradigms he is talking about changing. I will lose this client, and I feel like he will sue me to get all of his money back. He holds me to very little honestly - BUT WEEKLY reminds me that he won't be able to pay me next month if feature XY and Z arent ready!
If a developer is CLEARLY overwhelmed, it makes NO sense at all to continue to PILE ON feature after feature
"""
try:
while true:
rant+=", after feature"
except DevHeadExplodes as inevitable:
raise YourDevsRatesOrLookElsewhere(inevitable)8 -
It is the time for the proper long personal rant.
Im a fresh student, i started few months ago and the life is going as predicted: badly or even worse...
Before the university i had similar problems but i had them under control (i was able to cope with them and with some dose of "luck" i graduated from high school and managed to get into uni). I thought by leaving the town and starting over i would change myself and give myself a boost to keep going. But things turned out as expected. Currently i waste time everyday playing pc games or if im too stressed to play, i watch yt videos. Few years ago i thought i was addicted, im not. It might be a effect of something greater. I have plans, for countess inventions, projects, personal, for university and others and ALL of them are frozen, stopped, non existant. No motivation. I had few moments when i was motivated but it was short, hours or only minutes. Long term goals dont give me any motivation. They give as much short lived joy, happines as goals in games and other things... (no substance abuse problems, dont worry). I just dont see point of my projects anymore. Im sure that my projects are the only thing that will give me experience and teach me something but... i passed the magic barrier of univercity, all my projects are becoming less and less impressive... TV and other sources show people, briliant people, students, even children that were more succesful than me
if they are better than me why do i even bother? companies care more for them, especialy the prestigious ones, they have all the fame, money, funding, help, gear without question!
of course they hardworked for ther positions, they could had better beggining or worse but only hard work matters right?
As i said. None of my work matters, i worked hard for my whole life, studing, crafting, understanding: programming, multiple launguages, enviorements, proper and most effcient algorithms, electronic circuits, mechanical contraptions. I have knowlege about nearly every machine and i would be able to create nearly everything with just access to those tools and few days worth of practice. (im sort of omnibus, know everything) But because had lived in a small town i didnt have any chances of getting the right equpment. All of my electronical projects are crap. Mechanical projects are made out of scrap. Even when i was in high school, nobody was impressed or if they were they couldnt help me.
Now im at university. My projects are stagnant, mostly because of my mental problems. Even my lifestyle took a big hit. I neglect a lot of things i shouldnt. Of course greg, you should go out with friends! You cant dedicate 100% of your life to science!
I fucking tried. All of them are busy or there are other things that prevent that... So no friends for me. I even tried doing something togheter! Nope, same reasons or in most cases they dont even do anything...
Science clubs? Mostly formal, nobody has time, tools are limited unless you designed you thing before... (i want to learn!, i dont have time to design!), and in addition to that i have to make a recrutment project... => lack of motivation to do shit.
The biggest obstacle is money. Parts require money, you can make your parts but tools are money too. I have enough to live in decent apartment and cook decently as well but not enough to buy shit for projects. (some of them require a lot or knowlege... and nobody is willing to give me the second thing). Ok i found a decent job oppurtunity. C# corporation, very nice location, perfect for me because i have a lot of time, not only i can practice but i can earn for stuff. I have a CV or resume just waiting for my friend to give me the email (long story, we have been to that corp because they had open days and only he has the email to the guy, just a easier way)
But there are issiues with it as well so it is not that easy.
If nobody have noticed im dedicated to the science. Basicly 100% scientist that want to make a world a better place.
I messaged a uni specialist so i hope he will be able to help me.
For long time i have thought that i was normal, parent were neglecting my mental health and i had some situations that didnt have good infuence on me as well. I might have some issiues with my brain as well, 96% of aspargers symptoms match, with other links included. I dont want to say i have it but it is a exciuse for a test. In addition to that i cant CANT stop thinking, i even tried not thinking for few minutes, nope i had to think about something everytime. On top of that my biological timer is flipped. I go to sleep at 5 am and wake up at 5pm (when i dont have lectures).
I prefer working at night, at that time my brain at least works normaly but i dont want to disrupt roommates...
And at the day my brain starts the usual, depression, lack of motivation, other bullshit thing.
I might add something later, that is all for now. -
We were a small startup with only 5-6 developers. I had to design the UI and develop most of the Android frontend, It was quite an easy and fun job for me because I don't get to see people rant about the design that needed to be implemented so, usually I design something that can be easily implemented.
We got 2 projects with a tight deadline and I took care of both project's design part and after completing the design I took the entire frontend of one project and rest of em started working with the other one. Usually we were a strong team and was able to deliver things real quick because we were expert in our intrested fields, I had a fast start in my project where the other project lagged a lot because of the desifn which was hard to implement by them, and the frontend was bo where near to get completed by the deadline and I couldn't help them out because it was all messed up shit handling both projects together.
Finally we were in a situation where none of our project are ready and the deadline was about to hit within a week, so we halted the other project and asked them to join me to complete the project am Working on, I had built most of the Android part and these fellows had a hard time figuring out stuff I made up (yeah, documentation was shit while you go agile), and finally things messed up and I had to work 2 continuous day and night without any sleep just to get the app ready 10 minutes before the official proto presentation.
The best part is I couldn't even get up from my chair and had a headache, fainted instantly when I took a few steps, but the product launch went good.
We fucked uo the code and both the projects just because we weren't available for each other considering the size of the team. Anyway we completed the project but It was a huge failure for us being first time to manage a startup.
Learned a lot of lessons,
Always make a team with people who are good at each of the aspect of development and never divide it to get shit done faster. -
Today I had a casual chat with my friend and we were discussing how human mind limits the things one can achieve. Like giving up after constant failures, or lack of determination, blaming destiny for failures. I told him I am never easy about the fact that your destiny is pre-written and you can't do anything about it. If you are willing, you can change it. You just need to have the right mindset.
He said I am going to do MBA after engineering. You can't be rich with just engineering. I told him if you work smart and hard enough, and just follow your passion, there is no need for an MBA. And he went on to tell me how top richest persons mostly comprise of businessmen.
I fear for the future. People like this with no goals when take up engineering, they blame everyone but themselves and the stream gets the bad name. People want money, but they don't want to work from the beginning. Even after that they give up too easy.
People like Bill and Mark were not pre-destined. They made themselves. They were just like us, but they never got satisfied with themselves. We all have the capabilities to be them or even better. We just need to keep driving ourselves until we reach there, we don't have to get satisfied. We have to keep improving and learn from our mistakes, then try again.2 -
So the story is true and this is what we have to deal with now..
My friend and I started to build a Web Application for a Roleplay Community. The project was for a client mainly and they don't mind if we try to sell this project to the public. All goes well except the shitty design, which is the one our client asked for. So after 6 months of work we planned to switch our backend to Nodejs, the switch look quite easy in our brains [PHP => NODEJS] because we already use Nodejs for instant functions without reloading the page.
So during the planning we earn a client which is one of the member of the clan, but he pay for another clan which is 6x bigger then the one we're in. So we continue to develop and think about the switch. We learn a news about a new competitor, this one sucks, we tried their App and it's not worth the money they ask. A few days after another competitor enter the market, this one is a big challenge for us. "Sit down tight, yea you reading this"..
The competitor use BUBBLE to create their shit, they earned 10 clients in one week and just punch us with "THE ROCK" hand, they release a lot of feature each week, they're 6 devs on that (if we can call them devs), we're 2 programmers (True Programmers). What we do in 1 week they do it in 5 hours with Bubble, the switching to Nodejs was a badluck, you couldn't add feature because of this switch during 2 weeks, this made us later and second in the race. My friend (at the same time my employee and back-end programmer) move into another appartment which obligate him to work full-time. At this time I'm f****, I'm only a Front-End Programmer vs 6 Wannabe Devs with a mother**** tool of *** (#Bubble).
This is where I am, in this beautiful opportunity to win this market but with this bad luck occuring = the opportunity is low, but our advantage is we don't have made our project public yet so they're the only good option for the communities to get that kind of web app, the others are not included and only a copy of this (Their Product) or just a big junk made with Wix.
At this time I'm working hard to make this opportunity happen, I have my math which I have to finish to have my High School diploma to do, a part-time job to get if I want to stay with an internet connection and finally I have to find a way to still be able to make my dream come true (Working on my Business at full time & Make money from it) and continue to be a Front-End Programmer/CEO of an enterprise.4 -
I just finished reading the last chapter of the DevOps Handbook, its an eye opener, but not an easy read. And still recommended.
I've been reading this book for the past year and a half, little by little. It was hard since I started understanding why my work was so frustrating (I'm in System-Cloud-Ops position). The book made sense, while the work did not, it got harder since the book provides solutions, but whenever I dicussed any solutions with management they dismissed everything.
I started to initiate improvements by myself:
Prioritizing tasks I thought were more important to improve the way of work - do now and ask questions later... I got yelled at, I got my managers angry, but afterwards more often then not they admitted I was right.
To make it possible I worked overtime and on weekends, trying to prove a better way is possible, by implementing a long term solutions to solve problems instead of workarounds, automating a lot of stuff, creating labs, preparing presentations and documentation.
Time and time again I tried to pitch more ideas related to DevOps but the managers didn't care...
I know now my burnout started 8 months ago slowly, my hairline started receding, I started clenching my teeth (the doctor said stress was the cause) which was very fainful.
I continued to work but I noticed I was also more cynical, frustrated, and tired.
In the process I neglected myself.
So finally after 2 years and a half I quit my job, to focus on myself, at least for a little while.
I hope in my next job will be better.4 -
2 hour meeting to brainstorm ideas to improve our system health monitoring (logging, alerting, monitoring, and metrics)
Never got past the alerting part. Piss poor excuses for human being managers kept 'blaming' our logging infrastructure for allowing them to log exceptions as 'Warnings', purposely by-passing the alerting system.
Then the d-head tried to 'educate' everyone the difference between error and exception …frack-wad…the difference isn't philosophical…shut up.
The B manager kept referring to our old logging system (like we stopped using it 5 years ago) and if it were written correctly, the legacy code would be easier to migrate. Fracking lying B….shut the frack up.
The fracking idiots then wanted to add direct-bypass of the alerting system (I purposely made the code to bypass alerting painful to write)
Mgr1: "The only way this will work is if you, by default, allow errors to bypass the alerting system. When all of our code is migrated, we'll change a config or something to enable alerting. That shouldn't be too hard."
Me: "Not going to happen. I made by-passing the alert system painful on purpose. If I make it easy, you'll never go back and change code."
Mgr2: "Oh, yes we will. Just mark that method as obsolete. That way, it will force us to fix the code."
Me: "The by-pass method is already obsolete and the teams are already ignoring the build warnings."
Mgr1: "No, that is not correct. We have a process to fix all build warnings related to obsolete methods."
Mgr2: "Yes. It won't be like the old system. We just never had time to go back and fix that code."
Me: "The method has been obsolete for almost a year. If your teams haven't fixed their code by now, it's not going to be fixed."
Mgr1: "You're expecting everything to be changed in one day. Our code base is way too big and there are too many changes to make. All we are asking for is a simple change that will give us the time we need to make the system better. We all want to make the system better…right?"
Me: "We made the changes to the core system over two years ago, and we had this same conversation, remember? If your team hasn't made any changes by now, they aren't going to. The only way they will change code to the new standard is if we make the old way painful. Sorry, that's the truth."
Mgr2: "Why did we make changes to the logging system? Why weren't any of us involved? If there were going to be all these changes, our team should have been part of the process."
Me: "You were and declined every meeting and every attempt to include your area. Considering the massive amount of infrastructure changes there was zero code changes required by your team. The new system simply worked. You can't take advantage of the new features which is why we're here today. I'm here to offer my help in any way I can with the transition."
Mgr1: "The new logging doesn't support logging of the different web page areas. Until you can make that change, we can't begin changing our code."
Me: "Logging properties is just a name+value pair dictionary. All you need to do is standardize on a name and how you add it to the collection."
Mgr2: "So, it's not a standard field? How difficult would it be to change the core assembly? This has to be standard across all our areas and shouldn't be up to the developers to type in anything they want."
- Frack wads smile and nod to each other like fracking chickens in a feeding frenzy
Me: "It can, but what will you call this property? What controls its value?"
- The look I got from both the d-bags I could tell a blood vessel popped.
Mgr1: "Oh…um….I don't know…Area? Yea … Area."
Mgr2: "Um…that's not specific enough. How about Page?"
Mgr1: "Well, pages can cross different areas, and areas cross different pages…what do you think?"
Me: "Don't know, don't care. It's up to you. I just need a name."
Mgr2: "Modules! Our MVC framework is broken up in Modules."
DevMgr: "We already have a field for Module. It's how we're segmenting the different business processes"
Mgr1: "Doesn't matter, we'll come up with a name later. Until then, we won't make any changes until there is a name."
DevMgr: "So what did we accomplish?"
Me: "That we need to review the web's logging and alerting process and make sure we're capturing errors being hidden as warnings."
Mgr1: "Nooo….we didn't accomplish anything. This meeting had no agenda and no purpose. We should have been included in the logging process changes from day one."
Mgr2: "I agree, I'm not sure why we're here"
Me: "This was a brainstorming meeting as listed in the agenda. We've accomplished 2 of the 4 items. I think we've established your commitment to making the system better. Thank you all for coming."
- Mgr1 and 2 left without looking at me or saying a word.1 -
A dev life in Queen songs:
„A Kind of Magic“ - Build successful
„A Winter’s Tale“ - Key Account Manager visits customer
„Action This Day“ - Release day
„All Dead, All Dead“ - System down
„Another One Bites the Dust“ - kill -9 4711
„Breakthru“ - 10 hour debuging session
„Chinese Torture“ - Microsft Office
„Coming Soon“ - Client asks for delivery date
„Dead on Time“ - shutdown -t 10
„Doing All Right“ - How's the progress on the new feature?
„Don’t Lose Your Head“ - git push -f
„Don’t Stop Me Now“ - In the zone
„Escape from the Swamp“ - Hand in resignation letter
„Forever“ - while(1)
„Friends Will Be Friends“ - friend class Vector;
„Get Down, Make Love“ - No rule to make target "Love"
„Hammer to Fall“ - Release day
„Hang on in There“ - 2 weeks until release
„I Can’t Live With You“- Microsoft
„I Go Crazy“ - Microsoft
„I Want It All“ - Google
„I Want to Break Free“ - free( (void*) 0xDEADBEEF );
„I’m Going Slightly Mad“ - Impossible feature requested
„If You Can’t Beat Them“ - Impossible feature promised by sales
„In Only Seven Days“ - Impossible feature ordered
„Is This the World We Created...?“ - Philosphic moments
„It’s a Beautiful Day“ - Weekend
„It’s a Hard Life“ - Weekday
„It’s Late“ - Deadline was last week
„Jesus“ - WTF?
„Keep Passing the Open Windows“ - Interprocess communication
„Keep Yourself Alive“ - Daily struggle
„Leaving Home Ain’t Easy“ - Time to get up and go to work
„Let Me Entertain You“ - Sales meets customer
„Liar“ - Sales
„Long Away“ - Project start
„Loser in the End“ - Dev
„Lost Opportunity“ - Job ad
„Love of My Life“ - emacs/vim
„Machines“ - Computer
„Made in Heaven“ - git
„Misfire“ - Unhandled exception at Memory location 0xDEADBEEF
„My Life Has Been Saved“ - Google drive/Facebook
„New York, New York“ - Meeting at customer
„No-One But You“ - Bus factor = 1
„Now I’m Here“ - Morning rush hour
„One Vision“ - Management goals
„Pain Is So Close to Pleasure“ - NullPointerExcption
„Party“ - Delivery completed
„Play the Game“ - Customer meeting inhous -
„Put Out the Fire“ - Support hotline
„Radio Ga Ga“ - GSM/GPRS/UMTS/LTE/5G
„Ride the Wild Wind“ - Arch Linux
„Rock It“ - Linux
„Save Me“ - CTRL-S/CTRL-Z
„See What a Fool I’ve Been“ - git blame
„Sheer Heart Attack“ - rm -rf /
„Staying Power“- UPS
„Stealin’“ - Stack Overflow
„The Miracle“ - It works
„The Night Comes Down“ - It doesn't work
„The Show Must Go On“ - Project cancelled
„There Must Be More to Life Than This“ - Philosophic moments
„These Are the Days of Our Lives“ - Daily routine
„Under Pressure“ - 1 day until release
„Was It All Worth It“ - Controlling
„We Are the Champions“ - Release finished
„We Will Rock You“ - Sales at customer
„Who Needs You“ - HR
„You Don’t Fool Me“ - Debugging session
„You Take My Breath Away“ - rm -rf /
„You’re My Best Friend“ - emacs/vim4 -
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 -
This story just left me speechless in any way and i want to share it. tl;dr at the end.
Im studying computer science in germany and in the first of the small classes i noticed... no, i was disturbed by a guy who would just say that the thing we're learning atm were so easy and the teacher shouldn't even bother to explain it to the class. I don't understand why you would spoile a class that hard... I'm here to learn and listen to the teacher, not to you little asshole. (We were doing basic stuff like binary system etc. but still, let us learn)
So he became unpopular pretty fast.
Fast forward, a few weeks of studying later there was a coding competition where you had to solve different algorithmic problems in a team as fast as possible.
I came there, without a team because my friends aren't interested but I enjoy such tournaments. This guy and me were the only ones without a team and we had to work together.
After him being a total dick for hours i had to watch him code a simple for-loop, that iterates through a sorted array. Nothing special, at this point anyone could do that task in our class so it shouldn't be a problem for him.
He made a simple for-loop and it worked fine, but we figured we had to iterate through the array the other way around.
'Alright', I think. 'Just let the index decr..' 'Pssshhh', he interrupted me and said he knows exactly how to do this.
I was quite impressed when he started to type in 'public int backsort..' in a new line. He tried to resort the array backwards with a quicksort that he then struggled to implement. (Of course we had to implement a quick runtime and we needed that quicksort badly)
I was kind of annoyed but impressed at the same time. I mumbled 'Java has an internal sorting algorithm already' just to amuse myself.
He then used that implementation.
After a few minutes of my pleasure and multiple tests without hitting the requested runtime, i tried to explain to him why we wouldn't need to sort that array backwards and he just couldn't believe it.
I hope that he stays more humble after that..
Also we became last place but thats ok :)
tl;dr: Guy spoiles whole class, brags with his untouchable knowledge (when we do things like binary system). In a competition has to iterate through a sorted array backwards - tries to implement a sorting algorithm to sort it backwards first. I tell him, we could use a already implemented java method. Then tell him we could simply iterate through decreasing the index. Mind-Blown2 -
Well this is the thing. I have been starting to replace a lot of my shit with Golang. I think it is a great language because of one small fact: it is a boring language.
With this I don't mean that it is not incredibly fun to use. It is and honestly I feel that a lot of the concepts that I had from C passed quite nicely with some additions. The language does not do anything special and there is no elegant code. It works in a very procedural fashion without taking into consideration any of the snazzy things found in JS, Python, c# etc etc. Interfaces and struct make sense to me, way more than oop does in other languages. I don't need generics with the use of interface parameters and I have hadly found a situation in which I have to strive too far away from the way things are done with Go to be happy with it, then again my projects are not hard or by any means groundbreaking (most of them deal with logistics or content management and a couple of financial apps that I am rewriting in Go from work)
The outcome is fast and easy to read since idiomatic go is for the most part very readable(no people...single letter variable names are by no means a standard and they should feel ashamed from it)
I miss the idea of a framework, but not so much and the docs and internal code for Go is just way top inviting. I believe the code to be readable enough than anyone that has gotten used to the syntax and ideas of the language can just jump in and start learning. This is the first language that I have learnt from studying the code as it is inside of the standard lib, the same I cannot say for any other language or framework.
Also, it play beautifully nice with vs code.
I dunno man, I feel that I am doing something wrong. I have projects built in Node, php, python, ruby and spring java as well as .net core and I still find Golang way more appealing simply because it goes harder than Python with "one preferred way" to do things.
The lang does not make me feel like a pro, i certainly develop in it at pro speeds, but it was made with beginners in mind to built fast and concurrent apps, with the most minimal syntax possible.
I guess my gripe with it is that it gets shunned from this, saying that it ignored years of lang research to make it as dumbed down as possible. Which it did, lack of generics amongst other things certainly make it seem like, but I will not say that it was poorly designed. Not at all, I believe it is a testament of amazing engineering. To be able to create such a simple yet amazingly powerful language.
Wish there were more to it. Wish there was a nice gui lib or a ml framework comparable to the ones offered by python and java. But I guess such things will come with time.
I feel stupid with this language.
And that is fine.5 -
Fixed a bug today that I created over a year ago.
It made a machine start doing really fucked up things like running motors when it shouldn't. My boss, an expert on the system and the code, gave me some ideas to check. He couldn't understand why it was doing it either. So I started checking things and comparing to another piece of code that does similar things. I finally found a place where I had used a really sketchy pointer. I even knew it was sketchy at the time and put a ? mark in the comments next to the line of code. I changed the code to match another system that explicitly creates the object. Then I started testing the system and boom everything is working as it should. I talked to my boss and explained everything. He said it was an easy mistake to make. Internally I was saying, "But I don't make easy mistakes. I make hard mistakes!" LOL
Got to walk away from work for the weekend knowing that my other code is a lot more solid than I was thinking earlier this week. I was starting to second guess what could possibly cause this problem and thinking there could be culprits everywhere. Boss was happy problem was solved as he is going to be showing off the system I am working on in a month at a show.3 -
To give you some context, in the past year we have change managers 3 times. Obviously our process (we were trying to follow agile) has suffer the most with all these changes since it seems the managers that have been assigned to us are not really IT people.
We are using TFS (I know...) for our builds and for our scrum and kanban boards, only use developers and QA are really using the board and all the benefits that it provides and the managers are oblivious to what TFS is. I have tried offering them training and workshops but they just don't want to learn.
And now they want us to keep the requirement information on word documents and Excel instead. I'm not sure I can continue my battle against Word/Excel...
I understand they are valuable tools but... Is it really difficult to use a tool that was made specifically for that and it's as easy as filling some text fields and click a button? Why is it so hard to understand that if you want to know the status of a task is as simple as following a link where you can find all the related information?
I think I'm loosing it, even the other developer on my team is in support of using Word... of course the guy doesn't know agile and his cards on the board are shit making him work with QA all the time....
Feel like I'm alone here....4 -
Was tasked to implement a PIM, they suggested Akeneo, but I wanted something I could scale out to my imagination. Frontend Design is not my thing so I ripped out the template of Akeneo...
Hello best of both worlds! 😂1 -
How I wish my job interviews would end like this:
HR: "So, we're looking for a developer with experience in Nuxt.js. Can you tell us about your experience with that framework?"
Developer: "Honestly, I'm not very familiar with Nuxt.js. But I have a lot of experience with Vue.js, which Nuxt.js is built on top of."
HR: "Oh, well that's just fantastic. So you're telling me that we're supposed to hire someone who doesn't know the most important part of our stack? How hilarious!"
Developer: "Look, I understand that Nuxt.js is important to your team. But I'm a quick learner, and I'm confident that I can pick it up quickly."
HR: "Oh, I'm sure you are. I mean, it's not like Nuxt.js is a completely different framework or anything. You can just magically learn it overnight, right?"
Developer: "I never said it would be easy, but I'm willing to put in the work to learn it. My experience with Vue.js and JavaScript is still valuable, and I think I could make a positive contribution to your team."
HR: "Oh, I'm sure you could. I mean, it's not like there's a million other developers out there who already know Nuxt.js. We might as well just hire someone who doesn't know anything and hope for the best, right?"
Developer: "Okay, that's enough. I get it, you're not interested in my skills. But maybe you should consider the fact that your job description didn't even mention Nuxt.js as a requirement. If it was so important, you should have made that clear from the beginning."
HR: "Oh, don't get angry. We're just trying to find the best candidate for the job. And clearly, that's not you."
Developer: "Fine. I don't need this kind of attitude from someone who doesn't even know the difference between Vue.js and Nuxt.js. Good luck finding someone who meets your impossible standards."
HR: "Yeah, good luck to you too. I'm sure you'll find a job where you don't have to learn anything new or challenging."
Developer: "At least I'll be working with people who appreciate my skills and experience."
HR: "Sorry, what was that? I couldn't hear you over the sound of your arrogance."
Developer: "You know what? I don't need this. I'm out of here."
HR: "Wait, wait, wait. Don't be like that. We were just having a little bit of fun. You know, trying to lighten the mood."
Developer: "I don't think it's funny to belittle someone for not knowing everything. And I don't appreciate being treated like I'm not good enough just because I haven't used Nuxt.js before."
HR: "Okay, okay. You're right. We shouldn't have been so hard on you. But the truth is, we really do need someone who knows Nuxt.js. We can't afford to waste time on training someone who doesn't know the technology."
Developer: "I understand that, but I'm willing to learn. And I think my experience with Vue.js and JavaScript could still be valuable to your team."
HR: "You know what? You're right. We've been looking for someone with Nuxt.js experience for so long that we forgot to consider other skills and experience. We'd like to offer you the job."
Developer: "Really? Are you serious?"
HR: "Yes, really. We think you'd be a great fit for our team, and we're willing to provide you with the training you need to get up to speed on Nuxt.js. So, what do you say? Are you interested?"
Developer: "Yes, I'm definitely interested. Thank you for giving me a chance."
HR: "No problem. We're excited to have you on board. Welcome to the team!"5 -
In a country, a long time ago there was a programmer by the name of Alex. He was a programming genius and apart from a few hours of sleep, he was busy developing unique programs for new generation technology firms. Alex was a bachelor and he happily and proudly lived the way he wanted to. He did not have duties, authority over him, bosses to report to, children to take care of, and distractions. He could sit and code for the entire day without getting any break or feeling a bit tired. However, he had no idea that everything in his life was soon going to turn around. Before Marriage: The Bachelor’s Life Alex was the epitome of a modern ‘Play Boy ‘ or every man’s dream. He was fairly dressed, had a classy house, a snazzy car, and a good-paying job. He was in the habit of spending his mornings drinking coffee while browsing through the different coding topics. He comes in the afternoon and spends the evening part of the day with his friends. Life has never been this good. Alex was able to work hard and the more he was innovative, he enjoyed it. It illustrates how a young person would sit for many hours coding at night and not bother about other people around him. He was alone as a bird and as per him, that’s what he wanted to be. He had no peer to tell the truth to, no wife to prepare meals for, no maids to babysit his mess. A man could chow down a pizza for breakfast, lunch, and supper with not even a raised eyebrow from onlookers. He was profiting from living the best life he possibly could. After Marriage: Married Life: Alex & Sarah The climax for Alex is when he marries Sarah on a sunny morning on a fine day. Young people met, and after becoming enamored, started a family and got married to find a new home. Sarah was friendly with people and it was very easy for her to make friends; however, she had little knowledge of technology. Alex had it in his mind that marriage does not change the life you lead and how wrong he was. It was a fairy-tale to have such a perfect life for several days after the marriage. Their nights would be spent in front of the television set with their arms wrapped around each other, eating takeout. Despite this, when the number of days stretched into weeks, and the weeks into months, Alex felt the beginning of a shift in his behavior. The Coding Cave That Transformed into A Home Office Due to the pandemic the coding cave Alex used to have became a home office. Sarah had made up her mind to open her business from home, therefore, she required a home office. Thus, she moved inside the cubicle that Alex had created as his coding cave and left him with no space to code. He now had to code in the living room, because Sarah would incessantly request him to either lower the auditory input of the keys he was typing or to switch off the LCD screen. The Once-Clean Apartment Turns into a Mess Alex was a neat freak, and he adored tidiness, especially in his apartment. But after marriage, his once clean and neat-looking apartment was changed into a dirty one. Although Sarah was not very neat, she used to litter her things anywhere she felt like without being conscious of it. Alex was a programmer and his coding notes were mixed with Sarah's business papers, it irritated him so much. Alex’s to-do list before marriage The to-do list before marriage only comprised coding-related tasks. At marriage, however, he seemed to have developed a longer list of things to do than ever before. Instead of just going to the grocery store to buy some food, Alex seemed to have endless tasks to do mostly around the house. He had to cook for himself, sweep the house, and wash the dishes among other things. This was a new world as far as he was concerned. The Pizza Days Are Over Gone there is no more time for Alex could eat pizza in the morning, afternoon as well and evening. Sarah was very conscious of what she took as food or what her family took as food and therefore ensured that Alex took healthy home-cooked foods. He could not have the pizza anymore but the meals prepared by Sarah were really tasty. Conclusion Therefore from a life before marriage to the life after marriage, it was evident that Alex led two different lives. He went from a playful man with not much responsibility to a man with more responsibilities as a husband and a father. Still, he wouldn’t have it any other way, despite these changes. Later he cherished Sarah and the life they had, and nothing in this world could make him exchange what he had now. Essentially, it was a tricky business being married, but a blessing, and an addition of love, company, and much hilarity too. Therefore, if you are a bachelor reading this, embrace your coding cave and your pizza days because once you utter the words ‘I do,’ all those will be things of the past.But trust me, it's all worth it.