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 - "program management"
-
Interview with a candidate. He calls himself "C++ expert" on his resume. I think: "oh, great, I love C++ too, we will have an interesting conversation!"
Me: let's start with an easy one, what is 'nullptr'?
Him: (...some undecipherable sequence of words that didn't make any sense...)
In my mind: mh, probably I didn't understand right. Let's try again with something simple and more generic
Me: can you tell me about memory management in C++?
Him: you create objects on the stack with the 'new' keyword and they get automatically released when no other object references them
In my mind: wtf is this guy talking about? Is he confusing C++ with Java? Does he really know C++? Let's make him write some code, just to be sure
Me: can you write a program that prints numbers from 1 to 10?
Ten minutes and twenty mistakes later...
Me: okay, so what is this <int> here in angle brackets? What is a template?
Him: no idea
Me: you wrote 'cout', why sometimes do I see 'std::cout' instead? What is 'std'?
Answer: no idea, never heard of 'std'
I think: on his resume he also said he is a Java expert. Let's see if he knows the difference between the two. He *must* have noticed that one is byte-compiled and the other one is compiled to native code! Otherwise, how does he run his code? He must answer this question correctly:
Me: what is the difference between Java and C++? One has a Virtual Machine, what about the other?
Him: Java has the Java Virtual Machine
Me: yes, and C++?
Him: I guess C++ has a virtual machine too. The C++ Virtual Machine
Me (exhausted): okay, I don't have any other questions, we will let you know
And this is the story of how I got scared of interviews29 -
So i've been a dev manager for a little while now. Thought i'd take some time to disambiguate some job titles to let everyone know what they might be in for when joining / moving around a big org.
Title: Senior Software Engineer
Background:
- Technical
- Clever
- Typically has years experience building what management are trying to build
Responsibilities:
- Building new features
- Writing code
- Code review
- Offering advice to product manag......OH NO YOU DON'T CODE MONKEY, BACK TO WORK!
Title: Dev Manager
Background:
- Technical
- Former/current programmer
- knows his/her way around a codebase.
Responsibilities:
- Recruiting / interviewing new staff
- Keeping the team focused and delivering tasks
- Architecture decisions
- Lying about complexity of architecture decisions to ensure team gets the actual time they need
- Lying about feature estimations to ensure team gets to work on critical technical improvements that were cancelled / de-prioritised
- Explaining to hire-ups why we can't "Just do it quicker"
- Explaining to senior engineers why the product manager declined their meeting request
Title: Product / Product Manager
Background:
- Nothing relevant to the industry or product line what so ever
- Found the correct building on the day of the interview
- Has once opened an Excel spreadsheet and successfully saved it to a desktop
Responsibilities:
- Making every key decision about every feature available in the app
- Learning to ignore that inner voice we like to call "Common sense"
- Making sure to not accidentally take some advice from technical staff
- Raising the blood pressure of everyone below them / working with them
Title: Program Lead / Product Owner
Background:
- Capable of speech
- Aware of what a computer is (optional)
Responsibilities:
- Sitting down
- Talking
- Clicking random buttons on Jira
- Making bullet point lists
Title: Director of Software Engineering
Background:
- Allegedly attended college/university to study computer science
- Similar to a technical product manager (technical optional)
Responsibilities:
- Reports directly to VP
- Fixes problems by creating a different problem somewhere else as a distraction
- Claiming to understand and green light technical decisions, while having already agreed with product that it will never happenrant program lead practisesafehexs-new-life-as-a-manager management explanation product product owner9 -
It happened to one of my friend at work place.
So my friend is a UI developer and was working on a super critical project with very tight deadline. He was waiting for design team to give him mocks and web api team for giving Apis, so he can start his work. Now there are 4 days left for deadline and none of the parties are ready with their work, and my friend is sitting idle. Management is getting anxious day by day. So one program management lady called him the weak link in the standup meeting and started putting blame on him for the delay in the project. Guy tried to explain that it's not his fault and he is stuck. But that lady was not in a mood to listen.
Now come the next day, in morning he got the design ready and complete Apis from other teams. That day he missed the standup meeting, worked whole night and completed the work with two days remaining for deadline. He went to standup meeting after completing the work, and when the turn came for him to give his status, he started with "the weak link has finished the work". There was a pin drop silent in the room. He continued to give his update like this for next couple of days. And finally that lady was forced to apologize in meeting room by him.7 -
One week, and it turned out to be worse than that.
I was put on a project for a COVID-19 program in America (The CARES Act). The financial team came to us on Monday morning and said they need to give away a couple thousand dollars.
No big deal. All they wanted was a single form that people could submit with some critical info. Didn't need a login/ registration flow or anything. You could have basically used Google Forms for this project.
The project landed in my lap just before lunch on Monday morning. I was a junior in a team with a senior and another junior on standby. It was going to go live the next Monday.
The scope of the project made it seem like the one week deadline wasn't too awful. We just had to send some high priority emails to get some prod servers and app keys and we were fine.
Now is the time where I pause the rant to express to you just how fine we were decidedly **not**: we were not fine.
Tuesday rolls around and what a bad Tuesday it was. It was the first of many requirement changes. There was going to need to be a review process. Instead of the team just reading submissions from the site, they needed accept and reject buttons. They needed a way to deny people for specific reasons. Meaning the employee dashboard just got a little more complicated.
Wednesday came around and yeah, we need a registration and login flow. Yikes.
Thursday came and the couple-thousand dollars turned into a tens of millions. The amount of users we expected just blew up.
Friday, and they needed a way for users to edit their submissions and re-submit if they were rejected. And we needed to send out emails for the status of their applications.
Every day, a new meeting. Every meeting, new requirements that were devastating given our timeframe.
We put in overtime. Came in on the weekend. And by Monday, we had a form that users could submit and a registration/ login flow. No reviewer dashboard. We figured we could take in user input on time and then finish the dashboard later.
Well, financial team has some qualms. They wanted a more complicated review process. They wanted roles; managers assign to assistants. Assistants review assigned items.
The deadline that we worked so hard on whizzed by without so much as a thought, much less the funeral it deserved.
Then, they wanted multiple people to review an application before it was final. Then, they needed different landing pages for a few more departments to be able to review different steps of the applications.
Ended up going live on Friday, close to a month after that faithful Monday which disrupted everything else I was working on, effective immediately.
I don't know why, but we always go live on a Friday for some reason. It must be some sort of conspiracy to force overtime out of our managers. I'm baffled.
But I worked support after the launch.
And there's a funny story about support too: we were asked to create a "submit an issue" form. Me and the other junior worked on it on a wednesday three weeks into the project. Finished it. And the next day it was scrapped and moved to another service we already had running. Poor management like that plagued the project and worked in tandem with the dynamic and ridiculous requirements to make this project hell.
Back to support.
Phone calls give me bad anxiety. But Friday, just before lunch, I was put on the support team. Sure, we have a department that makes calls and deal with users. But they can't be trained on this program: it didn't exist just a month ago, and three days ago it worked differently (the slippery requirements never stopped).
So all of Friday and then all of Saturday and all of Monday (...) I had extended panic attacks calling hundreds of people. And the team that was calling people was only two people. We had over 400 tickets in the first two days.
And fuck me, stupid me, for doing a good job. Because I was put on the call team for **another** COVID project afterwards. I knew nothing about this project. I have hated my job recently. But I'm a junior. What am I gonna say, no?7 -
A group of Security researchers has officially fucked hardware-level Intel botnet officially branded as "Intel Management Engine" they did so by gathering it all the autism they were able to get from StackOverflow mods... though they officially call it a Buffer Overflow.
On Wednesday, in a presentation at Black Hat Europe, Positive Technologies security researchers Mark Ermolov and Maxim Goryachy plan to explain the firmware flaws they found in Intel Management Engine 11, along with a warning that vendor patches for the vulnerability may not be enough.
Two weeks ago, the pair received thanks from Intel for working with the company to disclose the bugs responsibility. At the time, Chipzilla published 10 vulnerability notices affecting its Management Engine (ME), Server Platform Services (SPS), and Trusted Execution Engine (TXE).
The Intel Management Engine, which resides in the Platform Controller Hub, is a coprocessor that powers the company's vPro administrative features across a variety of chip families. It has its own OS, MINIX 3, a Unix-like operating system that runs at a level below the kernel of the device's main operating system.
It's a computer designed to monitor your computer. In that position, it has access to most of the processes and data on the main CPU. For admins, it can be useful for managing fleets of PCs; it's equally appealing to hackers for what Positive Technologies has dubbed "God mode."
The flaws cited by Intel could let an attacker run arbitrary code on affected hardware that wouldn't be visible to the user or the main operating system. Fears of such an attack led Chipzilla to implement an off switch, to comply with the NSA-developed IT security program called HAP.
But having identified this switch earlier this year, Ermolov and Goryachy contend it fails to protect against the bugs identified in three of the ten disclosures: CVE-2017-5705, CVE-2017-5706, and CVE-2017-5707.
The duo say they found a locally exploitable stack buffer overflow that allows the execution of unsigned code on any device with Intel ME 11, even if the device is turned off or protected by security software.
For more of the complete story go here:
https://blackhat.com/eu-17/...
https://theregister.co.uk/2017/12/...
I post mostly daily news, commentaries and such on my site for anyone that wish to drop by there19 -
A quite normal Windows day:
Bios to Windows: "Go now! Get up!"
Windows to Bios: "Always slow with the young circuit boards."
"I've got something weird on screen."
Windows' answer: "Ignore it first."
Hardware assistant to Windows: "The user puts pressure. He wants me to identify this thing. Could be an ISDN card."
Windows: "Well, well."
Unknown ISDN card to all: "Will you please let me in?"
Network card to intruder: "You can't spread out here!"
Windows: "Quiet in the case! Or I'll cut both their support!"
Device Manager: "Offer compromise. The network card is allowed on Mondays, the ISDN card is on Tuesday."
Graphics card to Windows: "My driver retired yesterday. I'm crashing now."
Windows to graphics card: "When will you be back?"
Graphics card: "Well, not at first."
CD-Rom drive to Windows: "uh, I would have a new driver here..."
Windows: "What's ich´n supposed to do with it?!"
Installation software to Windows: "Leave it, I'll mach´ that already."
Windows: "That's nice to hear."
USB connection to interrupt management: "Alarm! Just been penetrated by a scanner cable. Request response."
Interrupt management: "Where are you coming from?"
USB connection: "I was in the computer right from the start. I'm joined by another colleague."
"You're not on my list." - "Say something."
Windows: "Hopefully there won't be another printer."
Graphics card: "The new driver twitches."
Windows: "We'll just have to get the old one out of retirement."
Uninstall program to new driver: "Go away."
Unwanted driver: "Fuck you."
Windows to Norton Utilities: "Kill him and his brood!"
Utilities to driver rests: "Sorry, we have to delete you."
Important system file: "Arrrrrrgghh!"
Windows on blue screen: "Gib´, the Norton Boys are over the top again."
Blue screen to user: "So, that's it for this week."
Excuse me for stealing your time
And I know it's way too long7 -
Ahhhhh devrant... long time no see.
I just need to get something off my heart. The past two years, I worked for the same ISP in Germany, but now as a devops engineer. Well, popo hit the fan really quick lately..
First a good friend, team lead for one of five areas in Germany, quit his job. He was one of the nicest persons I knew, and he believed that all that five areas should work together and share dev resources. Thats why I work mostly in other areas as developer.
Shortly after, his deputy quit as well. I heard that this specific area, the management were a bunch of dicks, but wow!
A short while later, I learnd the hard truth, why those two good friends quit, and that brings me to this story. In a meeting I readied myself up to present my new plattform - a social room - to management. I got a lot of positive feedback from others and we thaught managment would approve of the project. But nope. "We can buy from external, we dont need to program ourselfs. In fact lets stop spending money on internal programming, we should outsource everything!"
I was baffeld... Wtf did i just witness? My team lead didn't say anything, and afterwards I didn't dare to question it, but I told most of my close dev friends and we all realizied, that the rumors were true... We will be shifting into project managment.
At this point, I realized that I wasnt having it, and made a linkedIn account, not because I wanted to switch jobs, but because, meh you never know.
One week ago, one of my bestest buddies said he will quit and join his team lead that left eariler this year, I was heartbroken. Me and our other buddy are devestated, because now we have to do everything he had done. Management didn't listen as we told them that nobody can maintain his code. I have so many projects, I can bearly keep up with them. Now I got a lead role for creating the server infrastucture for a huge project my buddy was working on. Only as specialist and not PM, but his Team Lead thinks I am replacing him!
Last week I got a message on LinkedIn, a consulting firm reached out to me to aquire me as a new consultant or devops engineer. They look great, only less vacation (26 instead of 30 days), 40h shifts instead of 38h and only slightly more base payment. I currently receive about 53.000€ a year, the new firm only grants up to 60.000€ a year for anyone. Otherwise, they look great.
With all my buddies quitting around me, work getting more while time developing decreasing, I don't know what the right thing to do is... There is no way I can get a payment increase in my current position. I always say "my workplace is save, but my work isnt". I don't want to do project managment.
Today I have a meeting with my team lead, she is really nice btw. This is an annual meeting where we discuss my future in the company etc. Shortly after, I have a meeting with the new firm to discuss a bunch of questions I have.
I dont know what to do...
Edit: I missed you, devrant6 -
So as quite some people know on here, I am strongly against closed source software and have a very strong distrust in it as well.
So next to some principles (and believes etc etc etc) there is one specifc 'event' which triggered the distrust in CSS (No not Cascading Style sheet, I mean Closed Source Software :P). So hereby the story about what happened.
I think it was about 5 years ago when a guy joined my programming class (I wasn't in uni although I studied but for the sake of clarity, lets just call it uni for now (also, that makes me feel smarter so why the fuck not!)) in uni. He knew a shitload about programming for his age but he was convinced that he was always right. (that aside)
Anyways, at some point we had to work in groups on this project (groups for specific tasks) and he chose (he loved it, we hated it, he had the final say) Trello for 'project management'. He gave everyone (I was running Windows for a little bit at that moment because the project was in C# and the Snowden leaks had not arrived yet so I was not extremely uncomfortable with using Windows, just a lot) this addon program thingy he created for Trello which would make usage easier. I asked if it was open source, he replied with 'No, because this is my project.' and although I did understand that entirely, I didn't feel comfy using it because of it's closed source nature. Everyone declared me paranoid and he was annoyed as hell but I just kept refusing to use it and just used the web interface.
*skips to 2 years later*
I met that guy again at the train station at a random day! Had the usual 'how are you and what's up after a few years' talk with him and then he told me something that changed my view on closed source software for most probably the rest of my life.
"Hey by the way, do you remember that project of a few years back where you didn't want to use my software because of your 'closed-sourceness paranoia'? I just wanted to say that I actually had some kind of backdooring feature build in which (I am not going to say what) allowed me to (although I didn't use it) look at/do certain things with the 'infected' computers. I really wanted to say that I find it funny how you, the only one who didn't give in to my/the peer pressure, were the only one who wasn't affected by my 'backdoor' at that moment! Also your standards towards the use of closed source software probably played a big part probably. I find that pretty cool actually!"
Although I cannot confirm what he said, he was exactly the type of guy who would do this IMO (and not only IMO I think).
So yeah, that's one of the reasons AND the story behind a big part of why I don't trust closed source software :).5 -
When I was in school I had some guys walk up to me and asked:
G: Are you Feeno?
Me: Yes, what's up?
G: We need our FY project on school management system done.
Me: Okay?
G: How much will that cost us?
Me: *confused because I was still a freshman. At that point the only programming language I knew was elementary qbasic. I couldn't even write a hello world program without the help of Google*
So played along because yes we're talking about money here.
Me: It will cost you guys N amount of money (*improvised deep voice*).
G: Okay. Fair price.
* Right there they transferred half the requested amount to me. *
Holy moly! This guys aren't joking around. I don't know shit! They clearly mistook me for a senior student whose first name is Feeno, to me that was a nick referred to me by my friends.
I'm in this one for sure and it's a do or die transaction cus I'm returning no fucking money. I told my friends what had happened and they insisted I return back the money to the students and admit I can't deliver the project they were requesting.
Fuck all of yah! I'm keeping this money. Same afternoon I visited the school library with the intension of writing the code using the help of YouTube tutorials. I didn't find anything useful for qbasic as I thought I could write a full fledged school management system using qbasic.
I was lucky enough to find an existing source code on Codeproject, God bless that Indian guy. The source was in PHP and the tutor gave a step by step guide to setup XAMP and MySQL. I really don't know PHP but I guess source code modification is a natural skill to all programmers as I was able to modify the code to meet the requirements of the students (i.e school name, logo and other minor changes).
Most of what I learnt in programming came from modifying the source of that project. I learnt how to connect a PHP source to a MySQL database, I learnt about functions and their usage, I learnt the basics of HTML, I really learnt a lot and I would say that the speed at which I learnt was proportional to the amount of pressure I received to deliver.
That was how my journey as a full stack developer started. By chance maybe.2 -
This is something that happened 2 years ago.
1st year at uni, comp sci.
Already got project to make some app for the univ that runs in android, along with the server
I thought, omg, this is awesome! First year and already got something to offer for the university 😅
(it's a new university, at the time I was the 2nd batch)
Team of 12, we know our stuffs, from the programming POV, at least, but we know nothing about dealing with client.
We got a decent pay, we got our computers upgraded for free, and we even got phones of different screen sizes to test out our apps on.
No user requirement, just 2-3 meetings. We were very naive back then.
2 weeks into development, Project manager issues requirement changes
we have a meeting again, discussing the important detail regarding the business model. Apparently even the univ side hadn't figure it out.
1 month in the development, the project manager left to middle east to pursue doctoral degree
we were left with "just do what you want, as long as it works"
Our projects are due to be done in 3 months. We had issues with the payment, we don't get paid until after everything's done. Yet the worse thing is, we complied.
Month 3, turns out we need to present our app to some other guy in the management who apparently owns all the money. He's pleased, but yet, issued some more changes. We didn't even know that we needed to make dashboard at that time.
The project was extended by one month. We did all the things required, but only got the payment for 3 months.
Couldn't really ask for the payment of the fourth month since apparently now the univ is having some 'financial issues'.
And above all: Our program weren't even tested, let alone being used, since they haven't even 'upgraded' the university such that people would need to use our program as previously planned.
Well, there's nothing to be done right now, but at least I've learned some REALLY valuable lesson:
1. User Requirement is a MUST! Have them sign it afterwards, and never do any work until then. This way, change of requirements could be rejected, or at least postponed
2. Code convention is a MUST! We have our code, in the end, written in English and Indonesian, which causes confusion. Furthermore, some settle to underscore when naming things, while other chooses camel case.
3. Don't give everyone write access to repository. Have them pull their own, and make PR later on. At least this way, they are forced to fix their changes when it doesn't meet the code convention.
4. Yell at EVERYONE who use cryptic git commit message. Some of my team uses JUST EMOTICONS for the commit message. At this point, even "fixes stuffs" sound better.
Well, that's for my rant. Thanks for reading through it. I wish some of you could actually benefit from it, especially if you're about to take on your first project.3 -
When I learnt programming, sugar was still made out of salt and hence not used in coffee.
Also, we didn't have source level debuggers, only the "print" method. However, compiling was also slow. It was faster and more convenient to go through the program and execute the statements in one's head. This helped understanding what code is doing just by reading it. It also kept people from trial and error programming, something that some people fall for when they resort to single step debugging in order to understand what their own code is even doing.
Compiling was slow because computers in general were slow, like single digit MHz. That enforced programming efficient code. It's also why we learnt about big Oh notation already at school. Starting with manual resource management helped to get a feeling for what's going on under the hood.20 -
(Best read while listening to AEnima by Tool, loudly)
Dear Current Workplace,
Fuck you, for the reasons enumerated below.
Fuck your enterprise grey blue offices, the stifling warm air of a hundreds of bodies and sub par "development laptops".
Fuck your shitty carbonated water machines which were a cost saving measure over decent drinkable water.
Fuck your fake "flexi time", "you can do home office whenever you want" bullshit. You're still inviting me to mandatory meetings at 09:00 regularly.
Fuck your shitty, in house, third part IT provider sister company. They're the worst of all worlds. If it was in company, we'd get to give out to them, if it was an external company we'd fire them. And yes, when I quit I will quote the dumpster fire that is our corporate VPN as a major factor.
Fuck your cheery, bland, enterprise communication. Words coming under the corporate letterhead seem to lose all association with meaning. Agile, communication, open are things you write and profess to respect, but it seems your totally lack understanding of their meaning.
Fuck your client driven development. Sometime you actually have to fix the foundations before you can actually add new features. And fuck you management who keep on asking "why are there so many bugs and why is it always taking longer to deliver new releases". Because of you, you fucknuts, Because you can't say "NO" to the customer. Because you never listen to your own experienced developers.
Fuck your bullshit "code quality is important to us" line. If it's so important, then let us fix the heap of shit you're selling so that it works like a quasi functional program.
Fuck you development environment which has 250 projects in a single VS solution. Which takes 5mins plus to compile on a quad core i7 with 32 gb of ram.
Fuck this bullshit ball of mud "architecture". I spend most of my time trying to figure out where the logic should go and the rest of the time writing converters between different components. All because 7 years ago some idiot "architect" made a decision that they didn't have to live with.
Actually, fuck that guy in particular. Yeah, that guy who was the responsible architect for the project for 4 years and not once opened the solution to look a the code.
Fuck the manual testing of every business process. Manual setup of the entities takes 10mins plus and then when you run, boom either no message or some bullshit error code.
Fuck the antiquated technology choices which cause loads of bugs and slow down development. Fuck you for forcing me to do manual tests of another developers code at 20:00 on a Friday night because we can't get our act together to do this automatically.
Fuck you for making sure it's very clear I'm never going to be anything but a code monkey in this structure. Managers are brought in from outside.
Fuck you for being surprised that it's hard to hire competent developers in this second rate, overpriced town. It's hard to hire anywhere but this bland shithole would have anyone with half a clue running away at top speed.
Fuck you for valuing long hours and loyalty over actual performance. That one guy who everyone hated and was totally incompetent couldn't even get himself fired. He had to quit.
Fuck you for your mediocrity.
Fuck you for being the only employer for my skill-set in the region; paying just well enough that changing jobs locally doesn't make sense, but badly enough that it's difficult to move.
Fuck you for being the stable "safe" option so that any move is "risky".
Fuck your mediocrity.
Fuck you for being something I think about when I'm not at work. Not only is it shit from 9 to 5 you manage to suck the joy out of everything else in my life as well?
Fuck you for making me feel like a worse developer every day I work here. Fuck you for making every day feel like a personal and professional failure. Fuck you for making me seriously leave a career I love for something, anything else.
Fuck you for making the most I can hope for when I get up in the morning is to just make it until the night.6 -
Wrote a cpp semester project where i had to develop school management system.
The code was spaghetti and horrible with frightening OOP implementation but it was beautifully written with comments and 🐫 Casing.
Submitted the program and examiner rejected it while saying that i had copied it from else where and i could never write a beauty code like that .
You dumb 💩! Don't you know other basis to reject a person's hard-work6 -
Who the fuck came up with the idea of using SharePoint? What it even is?! Is it a website, wiki, document repo...?
Our version seems to be a broken wiki with no info content, old links, illogical navigation. And somehow word documents are integrated into it. Sometimes you see some weird calendar and timelines (from old projects). You can navigate into a folder, but you cannot get back. There's no ".." button?? You can map it like OneDrive to yourself, but Windows doesn't support any document version control. Where's the check in/out option from explorer menu??? I sure as shit have those for SVN, GIT etc. Is there a new version created everytime I press ctrl-s or only when I close the document?
Well, I could open the document in "online" mode. Ok, the formatting goes weird and everything is super slow. But at least I can fuck up someone elses document by accidentaly copy/pasting stuff, deleting lines, hitting my face into keyboard etc. There's automatically new version added!
Somehow you can enable the forced check in/out for documents. Obviously only the library admin can do that. And since he's just a program manager, he has no clue what the fuck is version control or document management. So he has this thing on his "things to do" list. For him, document management means sending various spec versions as email attachments. And the developers can figure out together who has the most recent one.
How did M$ push shit piece of shit to corporations? They even use this crap for the intranet making it slower than creation of galaxies. Though it's ok, since you cannot find anything from the intranet. It's all just head honchos blogs, seasonal greetings and stock market statuses. Nowhere is seen the downstairs cafeteria menu for the day. Or where to report for broken toilet. You know, stuff that 99% of people would like to see.
I complained to M$ about the SharePoint, but apparently there's no problem. You can code it yourself? Yeiii! So, instead of just updating some line in design spec, I have to take a 3 month class and get a MS sertificate, code some class-based-web-shit for 6 months and maybe, maybe then I can make the page/document look normal?
I am thinking, that I will just start writing my specs on paper. I will put them on the shelf and if you want to read it, you will check it out manually. And if someone else tries to edit it while you are editing it, you just cover the paper with your hands. There might be a requirement to make the document look more like MS Word, but that's easy to do. Just go to WC with the paper and wipe with it a couple of times.9 -
The more I use Go, the more i start to like it. I didn’t realize how nice being able to generate binaries for every OS that matters was, until I had that power. It beats the hell out of trying to distribute a Python app for sure.
Sure, it has its warts.
It’s overly bureaucratic in the same way Java is.
I hate that you can’t import something without using it (most people I’d wager preemptively import libraries they know they’re gonna need even if the code isn’t written yet)
I really wish there was a way to just say “See this JSON blob? All those keys and values are strings, trust me, you don’t need me to tell you the type of each one individually.”
Generics would be nice.
I’d kill for exceptions - any decently sized go program is going to have very many if err checks where most could be condensed down to a single try/catch in most other langs.
I wish the tooling was better. Dependency management was a solved problem when Go was released and yet they chose to ship without it. There’s still no standard. Many hours of time have been wasted dinking with this.
But ya know what? Even with those warts, it’s still easier to write than Java. It’s still write once run anywhere, it’s blazing fast, and doesn’t require your end user to install an entire freakin runtime.
<3 Go2 -
Fuck. I can't take this shit anymore.
There was a project where we had to implement third-party system for government agency processes management. For some reason, probably because my work is cheap for my boss, the task was assigned to me. Just as a reminder, I'm a .NET Dev. Zero experience in server management. Zero experience in external services implementation.
Anyway, system producent, also an government agency, got angry, becasue they can only earn money on implementation. They have to give the software to other agencies for free. Because of that I've got client program, incomplete documentation and broken scripts for database creation. It took me 2 months to get it all to work but at the end client was happy, my boss got paid and I've got 500 PLN (~130 USD) bonus.
Everything was fine for a while, but after a month server has started freezing everyday, some time before 7 am. The only way I found to make it work again was to restore snapshot made everyday at 10 pm. For a month I was waking up earlier and restored snapshot, and after that my boss took it upon himself. I tried few times to find a bug and fix it, but to no effect. Even person with much more experience with it tried to help but also couldn't find anything.
My solution? Copy all the data and configuration, create new machine, copy everything and check if the problem persists. If not, kill old server. Client won't even notice. But nooooooooo... It would cost my boss a bit of money and I'd need to work on it and he can't let it be, because I'm the only developer working on his flagship product. He'd rather wake up everyday and restore snapshot. Okay, as you wish.
And today, finally, everything went downhill. Snapshot wasn't created, server froze, backup can't be created. Nothing can be done. Client is furious, because they have had reported this problem and a few times restoration was too late and they couldn't work. No one knows how to fix it, I'm not working today (I'm still studying and am available only 2 days) and situation is really shitty.
BUT SURE. ITS BETTER TO RESTORE SERVER EVERYDAY THAN JUST FUCKING FIX IT.
Oh, also, there's no staging or any other real backup. We have snapshots for each day and that's that. Boss' order. Why do I even care...7 -
While this wasn't technically a real client, it's still one of the most insane requests I've ever had.
I chose to specialize in software engineering for the last year and a half of my degree, which meant a lot of subjects were based around teamwork, proper engineering practises, accessibility, agile methods, basically a lot of stuff to get us ready to work in a proper corporate dev environment. One of our subjects was all about project management, and the semester-long coursework project (that was in lieu of a final exam) was to develop a real project for a real client. And, very very smartly, the professors set up a meeting with the clients so that the clients could tell us what they wanted with sixty-odd students providing enough questions. They basically wanted a management service for their day-center along with an app for the people there. One of the optional requirements was a text chat. Personally not something I'm super interested in doing but whatever, it's a group project, I'll do my part.
The actual development of the project was an absolute nightmare, but that's a story for another day. All I'll say is that seven juniors with zero experience in the framework we chose does not make a balanced dev team.
Anyway, like three months into the four-month project we've got a somewhat functional program, we just need to get the server side part running and are working our asses off (some more than others) when the client comes in and says that 'hey, nice app, nobody else has added the chat yet, but could you do voice recognition okay thanks?'.
Fucking.
Voice.
Recognition.
This was a fucking basic-ass management app with the most complicated task being 'make it look pretty' and 'hook up a DB to an API' and they want us to add voice recognition after sitting on their ass for three months??? The entire team collectively flipped its shit the second they were out of earshot. The client would not take no for an answer, the professor simply told us that they asked for it and it was up to us whether we delivered or not. Someone working on the frontend had the genius idea of 'just get them to use google voice recognition' so we added the how-to in the manual and ticked the requirement box.
What amazes me about all that is how the client probably had no idea that their new last-minute request was even a problem for us, let alone it being in a completely different ballpark in terms of implementing from scratch.8 -
I'm writing a huge program of identity management from two months, taking data from different sources and edit them to comply with a lot of cases. Today, my boss told me that he changes idea and my code is now useless... I would cry.4
-
A very rudimentary bedroom project management system. Each note is a different section of the program I'm working on.
I do this at night to make extra money, so it's not exactly the best system. It works though.
Have a visual representation of progress somehow motivates me.7 -
Flash has made Java programs look desirable. And anyone keeping up with me knows I despise Java and C#, despite having written C# and currently working on deciphering a Java server to create documentation.
Before I begin, I want to make this clear: IT IS TWO THOUSAND AND FUCKING EIGHTEEN. 2018. WE HAVE BETTER TECH. JAVASCRIPT HAS TAKEN OVER THIS BITCH. So, firstly, FUCK FLASH. Seriously, that shit's a security liability. If you work for a company that uses it, find a new job and then fucking quit, or go mutany and get several devs to begin a JS-based implementation that has the same functionality. There is no excuse. "I'm fired?" That's not an excuse - if there is a way to stop the madness, then fucking hit the brakes on that shit or begin job hunting. Oh, and all you PMs who are reading this and have mandated or helped someone else to mandate work on an enterprise flash program, FUCK YOU. You are part of the problem.
The reason for this outburst seems unreasonable until you realize the hell I went through today. At my University, there is a basic entry-level psychology course I'm taking. Pearson, a company I already fucking hate for some of the ethically sketchy shit they pulled with PARCC as well as overreach in publishing to the point they produce state tests here in the US - has a product called "My PsychLab" and from here on out, I'm referring to it as MPL. MPL has an issue - it is entirely fucking Flash. Homework assignments, the textbook, FUCKING EVERYTHING. So, because of that, you need to waste time finding a browser that works. Now let me remind all of you that just because something SHOULD WORK does NOT mean that it actually does.
I'm sitting on my Antergos box a few days ago: Chromium and Firefox won't load Flash. I don't know why, and don't care to find out. NPAPI and whatnot are deprecated but should still run in a limited mode or some shit. No go on Antergos.
So, today I went to the lab in the desolated basement of an old building which is where it's usually empty except a student hired by the university to make sure nobody fucks things up. I decided - because y'all know I fuckin' hate this - to try Windows. No go in Chrome still - it loaded Flash but couldn't download the content. So I tried Firefox - which worked. My hopes were up, but not too long - because there was no way to input. The window had buttons and shit - but they were COMPLETELY UNRESPONSIVE.
So the homework is also Flash-based. It's all due by 1/31/18 - FOUR CHAPTERS AND THE ACCOMPANYING HOMEWORK - which I believe is Tuesday, and the University bookstore is closed both Saturday and Sunday. No way to get a physical copy of the book. And I have other classes - this isn't the only one.
Also, the copyright on the program was 2017 - so whoever modded or maintained that Flash code - FUCK YOU AND THE IRRESPONSIBLE SHIT YOUR TEAM PULLED. FUCK THE SUPERIORS MAKING DECISIONS AS WELL. Yeah, you guys have deadlines? So do the end users, and when you have to jump through hoops only to realize you're fucked? That's a failure of management and a failure of a product.
How many people are gonna hate me for this? Haters gonna hate, and I'm past the point of caring.7 -
I dive in head first.
Some existing program annoys me, so I get this itch to write a selfhosted Spotify in Go, or a conky with 3D graphics in Rust.
I check the homepage of the language, download the tools, check which IDE is great for it.
Then I just start writing code, following the error corrections thrown by the IDE, doing web searches for all errors. Then when I run into a wall, I might check the reference docs or a udemy course.
Often I don't finish the project, because time is limited and I still have 4 million other things to do and learn, but at least I've learned a new language/tech.
Con: For tech which uses unique paradigms like Rust's memory management or Go's Goroutines, it can be frustrating to bash away at a problem using old assumptions.
Pro: By having a real demand for a product with requirements instead of a hello world or todo app, it's much easier to stay motivated, and you learn beyond what courses would teach you.5 -
I walk into the kickoff meeting today. The first part of this project had 5 developers and a project manager. Former project manager handled communication and sheltered us from bullshit. We built an amazing piece of software in a very short time. Customers were so amazed that they decided to reboot the project, boost the funding by several million, and let us go again. They specifically requested the same team.
Now the team looks like this: the neediest tester guy, a UX lady that doesn't have any UX background, an agile "visionary", a project manager that doesn't understand how development works, a solutions architect, 3 COTS platform specialists, a devops specialist, and an account lead. They have booked all kinds of workshops and other shit to kick things off.
So development capacity is only 60% of what it was. Management ratio was 1:5 before. Now the management ratio is 9:3. The new project manager thinks developers should be on more customer calls and responding to all customer emails during sprints. We already built this system and devops pipelines end to end. The COTS people, solutions architect, or the UX person can't program. They want us to magically convert this custom application into one based on COTS. What we need to do is make the rest of the business processes that we omitted, integrate known feedback, rework the backend, build better automated testing, improve logging and reporting, add another actor to the system, add a different authentication method, and basically work through the massive backlog.
How do they think this is going to work? Do they think we can download a custom engineered enterprise grade software system from Microsoft and double click all the way to customer satisfaction? The licenses alone are too much for the customer on an ongoing cost basis. I guess we can discuss it during the agile team-building weekend at some remote lake that the team "visionary" has set up. For the sake of fuck.
Like development isn't hard enough. Hire two more developers and lose all of the dead weight. Get a project manager that won't let the trivial shit roll down on us. What the fuck.5 -
Programmers nowadays have to...
… write 100%-covering unit tests;
… set up continuous integration, linters, hinters, style checkers, …;
… follow style guides for every language;
… meet impossible deadlines;
… meet impossible management/customer/end user expectations;
… read through terrible code others made;
… read through terrible documentation others made;
… make terrible documentation themselves;
… fight with the IDE;
… fight with the build tools;
… deal with unreproducible crash reports coming in from everywhere;
… debug code written at 2am (by themselves AND others);
…
…
…
… KNOW HOW TO PROGRAM.6 -
Not quite a rant... more of a question.
So, I'm almost 40 years old. I have a lot of work experience in varying fields, much of it in low-level management.
Truth is I've ALWAYS wanted to be a programmer.
I recently got into a somewhat competitive training program
where I'm learning to write Java, and will subsequently learn Android development. It's fairly in-depth, so it will take 10 moths to complete. My ultimate goal it's to work as a mobile dev at a great company, making products people love. Ambitious, I know.
My question is: Am I a fool for attempting to get into this field at this age? I'm starting to panic a little. I'm not sure if I'm wasting my time, or if 40 is too old to be the "newbie".
Thoughts?13 -
For the Project Management exam, my university requires us to install a program on our PERSONAL laptops that is meant to take over the control over the entire system during the exam, monitor any “suspicious activities”. The software is closed-source (it’s called Schoolyear Exams), does god-knows-what in the background, takes the control over the entire system and can be summoned through any Chromium web browser.
Don’t get me wrong, I get that you want to make sure nobody is cheating - but at this point, I’d rather write it with pen and paper. Or just provide us with computers for the time of exam.
I decided to whip out my old laptop instead, installed a Windows 10 on a separate SSD, and installed that software on it.
Also it’s very amusing that this software is also mandatory for the Linux exam… But the program can’t run on Linux (it’s Windows and Mac only and doesn’t even support M1 chips).
EDIT: typos11 -
So you have an organization that flirts with scrum and wants to be agile. You have non-crossfunctional teams who don't know what agile is. You have product owner who doesn't want to do backlog, but instead acts like project manager and asks for statuses and assigns tasks to peple. He wants the teams to find out what needs to be done and fill the backlog themselves - and then raport to him. You have business owers who noone knows who they are. You have project managers, who don't fit the whole scrum hierarchy. These project managers insist calling scrum masters "team leaders". Also these project managers think scrum is silly and don't want anything to do with it. And then you have higher program management that think this whole scum thing is better than sliced bread and everything is going just dandy!
Oh yeah, also highest organization management thinks that we are on the right track. We just need be more agile but less agile and work more efficiently whitout really saying, what the hell are we supposed to do.
Basically every day is like going to the zoo. Without the fun part.6 -
I recently started working on a 3 months old project, that was outsourced to two Indians genius. One of them left just before I arrived.
I had the chance to discover those guys were not using any version control system, just exchanging a zip file. I don’t even talk about the codebase, never seen such a mess …
Even better the project managers, were not using any IT program to follow the project advancement, but just Excel!!!
After a few days I realised that the remaining dev was not committing anything, the guy was always lying, (so many people died around him + some emergencies)
So, the guy got fired, but don’t worry management found new genius to save the project 🙂
Can someone tell me if outsourcing is really working?7 -
Broken teams,
define Agile principles in 2 lines :
Take 2X to your velocity,
and work 80hours a week ;)3 -
*Not a rant, but a very long vent*
I'm 20 and facing the worst dilemma I ever experienced.
Been working at a company for more than half a year, got the job thru a friend and started as an intern to take care of customer problems, crap they do to PC's, printers that wouldn't work, answer emails and phone calls about our point-of-sale software.
Soon everything started to change, on one day my boss asked my what I knew about coding, all I could answer was about some really basic stuff that I learnt on a previous semester at college, just some very basic coding stuff we got for C, how for loops works, conditions, that kind of thing. Soon I was being asked to code a client management software for our company, I was starting to grasp a little of this wonderful world, soon I could write some more complex code in C#, even did a program that in 30 seconds did a 3 day's worth of work, and then I got assigned to develop a mobile POS application, earned a raise, and man, is this wonderful.
I feel that I really found my place in life, found something that makes me jump out of bed every morning.
But here comes the dilemma part: I'm enrolled in a mechanical engineering school for two years now, and it's my second place already (been enrolled at a agronomy school before that) and I'm starting to feel out of place, in all the classes I'm taking, I cant help but feel that this isn't for me, I don't see myself doing that for a future, but I don't know if jumping to another boat would make it any better or just worse, I don't know how good are my odds at a tech oriented course are, I don't really know what to do with the rest of my life.
Guess I'm just afraid of doing something stupid and regret it later, don't know if I should listen to the voice that shouts to me to do whatever I want to with my life or the one that assures me of a stable path... Don't know if anyone will read this much, but if so, thanks a lot, just wanted to put it out of my shoulders and maybe get to know anyone that has been here. I'm new here, but I feel already at home. ☺8 -
Product Management thought of automating an entire legacy product so they funded undisclosed amount to program management who in turn hired >20 contract devs managed by architects and dev managers with zero functional or technical knowledge of product and who in turn went ahead automating the product in selenium, end result of which was an useless automation framework with lot of browser specific dependencies and whuch could run only on one setup environment and migrating test cases to another environment and running is almost impossible and tyrannical to configure. The automation test cases are highly disorganized with all generic setup, DB configurations and business case test data mixed up in same config files and which need to be rewriten every time ported from one environment to other.To add misery to my woes as a dev working in that product I was told to utilize that framework and enhance the quality of my code by writing inline automation Cases for the same. I am left speechless thoughtless and emotionless after that decision.2
-
Can someone explain to me why non-technical people even work in tech companies ??
I really don't want to sound like an asshole, but can you, for example, imagine that someone who doesn't even know what brick is would work on a construction site ?
Or can you imagine working in bike repair shop not knowing neither how to ride a bike nor how's bike is built ?
Sure, every company (especially large ones) needs bookkeepers/HRs/accountants etc. that don't need to know the inner workings of business.
Those people don't bother me, and they are necessary to keep the circus going.
I'm talking about all those middle management individuals.
All those "Project Managers" , "Business Analysts", "Directors' , "Principal Program Managers " etc etc ..
Such thing thing would be unthinkable in every other industry but somehow, in tech, anyone can work as long as they can throw a sufficient number of acronyms around.7 -
In my study program the is this last big course everyone is looking forward to because it combines everything we've learned so far. It's a group project where you build a middle-scale-ish application using ask kind of project management like scrum & co.
We had a good idea and am enthusiastic team.
Well, long story short: our assigned teacher was just bad. He barely listened to our proposal, had no fucking idea who we were at the second meeting and he FUCKING FELL ASLEEP in the last meeting. No feedback. No comments on our progress. Nothing. We could've work with the cleaning lady, she probably would've more feedback for us! -
Not necessarily a DEV rant, but a rant nonetheless.
This day sucks.
So first, my bus got late 25 minutes, because entire city decided that it will take a car - because it was raining horizontally. At some point I was doing 1 km in 10 minutes. Then my train got delayed by 5 minutes. So l had to do a little bit of cardio and ran to the next bus from station to school.
When I finally made it - surprisingly 5 minutes before the start of the exam, it turned out that I wasn't even on the list of participants. Which was surprising to both me and teachers, because I was clearly registered on the portal. Well, they hand added me in and let me in.
Then I open my laptop, I start it up
I try to start the exam. But it said that I don't even have the examination program - even tho I did install it yesterday.
So I had to quickly download it and reinstall it. Then I could finally write the Project Management exam.
Thankfully the exam went fine, I feel confident about the results, but it’s like everything tried to make sure I am not gonna make it.3 -
Tl;Dr Im the one of the few in my area that sees sftping as the prod service account shouldn't be a deployment process. And the ONLY ONE THAT CARES THAT THIS IS GONNA BREAK A BUNCH OF SHIT AT SOME POINT.
The non tl;dr:
For a whole year I've been trying to convince my area that sshing as the production service account is not the proper way to deploy and/or develop batch code. My area (my team and 3 sister teams) have no concept of using version control for our various Unix components (shell scripts and configuration files) that our CRITICAL for our teams ongoing success. Most develop in a "prodqa like" system and the remainder straight in production. Those that develop straight in prodqa have no "test" deployment so when they ssh files straight to actual production. Our area has no concept of continuous integration and automated build checking. There is no "test cases", no "systems testing" or "regression testing". No gate checks for changing production are enforced. There is a standing "approved" deployment process by the enterprise (my company is Whyyyyyyyyyy bigger than my area ) but no one uses it. In fact idk anyone in my area who knows HOW to deploy using the official deployment method. Yes, there is privileged access management on the service account. Yes the managers gets notified everytime someone accesses the privileged production account. The managers don't see fixing this as a priority. In fact I think I've only talk to ONE other person in my area who truly understands how terrible it is that we have full production change access on a daily basis. Ive brought this up so many times and so many times nothing has been done and I've tried to get it changed yet nothing has happened and I'm just SO FUCKING SICK that no one sees how big of a deal this. I mean, overall I live the area I work in, I love the people, yet this one glaring deficiency causes me so much fucking stress cause it's so fucking simple to fix.
We even have an newer enterprise deployment. Method leveraging a product called "urban code deploy" (ucd) to deploy a git repository. JUST FUCKING GIT WITH THE PROGRAM!!!!..... IT WAS RELEASED FUCKING 12 YEARS AGO......
Please..... Please..... I just want my otherwise normally awesome team to understand the importance and benefits of version control and approved/revertable deployments2 -
This started as an update to my cover story for my Linked In profile, but as I got into a groove writing it, it turned into something more, but I’m not really sure what exactly. It maybe gets a little preachy towards the end so I’m not sure if I want to use it on LI but I figure it might be appreciated here:
In my IT career of nearly 20 years, I have worked on a very wide range of projects. I have worked on everything from mobile apps (both Adroid and iOS) to eCommerce to document management to CMS. I have such a broad technical background that if I am unfamiliar with any technology, there is a very good chance I can pick it up and run with it in a very short timespan.
If you think of the value that team members add to the team as a whole in mathematical terms, you have adders and you have subtractors. I am neither. I am a multiplier. I enjoy coaching, leading and architecture, but I don’t ever want to get out of the code entirely.
For the last 9 years, I have functioned as a technical team lead on a variety of highly successful and highly productive teams. As far as team leads go, I tend to be a bit more hands on. Generally, I manage to actively develop code about 25% of the time to keep my skills sharp and have a clear understanding of my team’s codebase.
Beyond that I also like to review as much of the code coming into the codebase as practical. I do this for 3 reasons. I do this because as a team lead, I am ultimately the one responsible for the quality and stability of the codebase. This also allows me to keep a finger on the pulse of the team, so that I have a better idea of who is struggling and who is outperforming. Finally, I recognize that my way may not necessarily be the best way to do something and I am perfectly willing to admit the same. I have learned just as much if not more by reviewing the work of others than having someone else review my own.
It has been said that if you find a job you love, you’ll never work a day in your life. This describes my relationship with software development perfectly. I have known that I would be writing software in some capacity for a living since I wrote my first “hello world” program in BASIC in the third grade.
I don’t like the term programmer because it has a sense of impersonality to it. I tolerate the title Software Developer, because it’s the industry standard. Personally, I prefer Software Craftsman to any other current vernacular for those that sling code for a living.
All too often is our work compiled into binary form, both literally and figuratively. Our users take for granted the fact that an app “just works”, without thinking about the proper use of layers of abstraction and separation of concerns, Gang of Four design patterns or why an abstract class was used instead of an interface. Take a look at any mediocre app’s review distribution in the App Store. You will inevitably see an inverse bell curve. Lot’s of 4’s and 5’s and lots of (but hopefully not as many) 1’s and not much in the middle. This leads one to believe that even given the subjective nature of a 5 star scale, users still look at things in terms of either “this app works for me” or “this one doesn’t”. It’s all still 1’s and 0’s.
Even as a contributor to many open source projects myself, I’ll be the first to admit that have never sat down and cracked open the Spring Framework to truly appreciate the work that has been poured into it. Yet, when I’m in backend mode, I’m working with Spring nearly every single day.
The moniker Software Craftsman helps to convey the fact that I put my heart and soul into every line of code that I or a member of my team write. An API contract isn’t just well designed or not. Some are better designed than others. Some are better documented than others. Despite the fact that the end result of our work is literally just a bunch of 1’s and 0’s, computer science is not an exact science at all. Anyone who has ever taken 200 lines of Java code and reduced it to less than 50 lines of reactive Kotlin, anyone who has ever hit that Utopia of 100% unit test coverage in a class, or anyone who can actually read that 2-line Perl implementation of the RSA algorithm understands this simple truth. Software development is an art form. I am a Software Craftsman.
#wk171 -
OSX multi windows management is so fucking dumb and confusing! FFS have some kind of indicator when a program has multiple windows open.6
-
IT people stereotypes:
young gods = „I know that already for ages. Those senior folks are way too pessimistic and too theoretical.
Give me shell.. wait.. Call me h4ck0r g0d now because I use kali linux.“
("no, you did not learn anything")
senior slow-moes = „could you please retry your last sentence? I just opened my wordpad“
("triple-facepalm")
sales-Sebastian = „Sure we can do that. By intention our solution offers only graphQL access because our design goal is minimalism and simplicity“
(no, your solution is piece of sh*t).
Framework-Fred = „let’s stick to togaf. Please use these terms from the glossary of following data management framework. You can reach me via ITIL process xy“
Nearshore-Naan-Ganjid = „I can program in HTML“
("program")
Feel free to extend5 -
Is there something you find genuinely cool and would recommend ? Some webpage, program, OS, library or anything ?
I mean hey. There are SO MANY reaaaally cool things I didn't know until last few months.. Things I'd be so grateful for if I knew them earlier. I'll list some of them and I just know you have few of yours too. Feel free to educate the rest!
Processing - Program so fun to code in + CodingTrain(YTB channel)
Microcorruption.com - so freaking awesome if you wanna learn hacking / assembly (not x86 necessarily)
LiveOverflow - cool hacking channel
Radare - cool cmd Linux disassembler
vim-adventures.com - LEARN VIM (not just how to quit it) LITERALLY by playing a game!!!!!!!!!!!!!!
slashdot - stay updated , like really
"BEST-WEBSITES-A-PROGRAMMER-SHOULD-VISIT" - GUYS THIS! Sorry for caps but search this on GitHub and you will fucking die of happiness of how freaking useful links there are and no bullshit to dig through , just pure awesomeness. REALLY
HandBrake - Top media converter without bullshit and bloat stuff in it
Calibre - Best eBook management software capable of literally everything ebooks related. Kindle is a bloated joke compared to this
QubesOS - You know you can have every OS running at once - you have a Linux but are playing win games. Yup. It's there. Free
Computerphile - You all know it, it's just for completeness
Khan Academy - Same
VulnHub - download vulnerable VMs and hack them, or learn by reading writeup on how to do it!
Valgrind - MUST HAVE for C/C++ programmers
Computer Science crash course videos
That's all I can think of from top of my head but hey, there's more to it so definitely add your 2 cents!
Last thing, if nothing, just check the websites on GitHub, that's lifechanger
Looking forward to see some cool links & recommendations!2 -
Company logic: "we need a new software manager for the program. This guy has worked on every piece of our product. Including as team lead of one of the teams. But wait he has never signed time cards. We better bring in this guy who has been in the company less than a year and is a known job shopper to do it instead."
Long story short, I am getting a new software manager that knows nothing about our product. Fun4 -
Why can't people just do their fucking jobs? How hard is it to understand? Managers keep time, resources and risks in check and inform the developers. Developers develop and test the system. How the fuck do we have manager for agile, manager for program a manager for program b, risk mitigation manager, this shit manager that shit manager . For fucks sake with this much management we should be like fuckin bee nest and not an unorganized mess. In the end it turns out that literally there are more managers than developers just because they cannot fire an incapable idiot and they hire the next one. It is plain fucking simple - if you are not fit for the job get lost or make yourself fit. For fucks sake.
It really makes me wonder are there any well organized companies out there? -
During my professional education (loooooong time ago), i once tried to figure out, why my java application runs perfectly fine on windows, but the same application isn't able to find the required classes to run on linux.
Since i was a noob respecting linux management, i had no idea, that it is necessary to separate different paths of a program for the parameter "classpath" in windows by using ":" and in linux by using ";".
I mean. Is it really that hard to enable both separator for folders in classpath.
Man! It still haunts me from time to time after decades of development ^^3 -
I'm thinking of designing a programming language.
I want it to have easy to read syntax like python. Inheritance and interfaces like java. More advanced concepts like pointers and memory management like c++.
I was originally going to write my own compiler but I figured it's not worth reinventing the wheel. So the current plan is to basically just create a parser that turns a source file into c++ code and then that is compiled with g++. The only problem I can think of with that is catching runtime errors.
How does this language sound?
My purpose is to have a language that is as easy to read as python but with the speed of a compiled program and the ability to use it for embedded projects. I feel like reading larger C++ projects can be quite time consuming. So I figure the trade off of taking a little longer to write the code to make it more obvious what is going on is better than having a lot of syntax that can be tough to walk though the logic of (I find this often with c and c++, not like I don't figure it out but It definitely takes longer than it does to read and understand python)4 -
Microsoft is always at it.
Hello, I recently discovered this eye candy of a looking website and how good the CSS looks (Kudos to whoever made this) , and I decided to post a rant of my own. And its about MS Edge and other applications.
So I built my own ATX tower a while back (Loving it) , and I found that it was WONDERFUL to have a computer that was brand new, that didnt have candy crush preinstalled on it when I got it.
Windows 10 users, do this:
Press WIN+I to open the settings menu.
Go to "Apps"
Scroll down the list....
How many applications do you see there that are actually useful , or that you have downloaded?
I never downloaded a Realtek Driver... and I never need it for anything to work. This is the case for 90% of the things you may see in the applications.
Why is HULU installed?
Why is NETFLIX installed?
Why is MINECRAFT BETA INSTALLED? THE BETA HASNT BEEN OUT IN YEARS?
But I digress, this is the case when I work on a computer such as my grandmothers who, bless her soul, isnt very adept at basic file management. Heck , she uses free Norton Antivirus against my recommendation to use the PAID active firewall application on her computer (VIPRE)
So needless to say she needs help. All the time.
So here comes microsoft recently, reinstalling like 15 different programs on her computer , including MS edge. Who else is tired of bloating? I know I am.
I recently found this program on Git!
Its the Sycnex Windows 10 DeBloater
But guess what? DONT USE IT.
Wanna know why?
Because if you do, it works, and if it works, it disables:
- Cortana (basic search engine for your OS, good luck finding candy crush).
- Microsoft Store (That means no XBOX games pass either)
- It breaks part of the file explorer
Wanna know why? BeCaUsE it geTs riD oF Ms EdGe
And believe it or not, apparently MS edges source code is Mandatory for certain functions on your computer. So even If you try to uninstall the browser, it stays behind in some form.
So there you have it. They hard coded it into windows.
Enjoy!
So its not even the author of the GITHUB programs fault, its just a real techincal limitation of the platform.
I hate that stuff man. I really do. There should be 20 things installed on my computer and thats it. Everything else is just, space for games on a solid state. Or Eclipse Photon, etc.
I would post links to show you guys a few things but. Unfortunately I cant post URLs yet!
However, thats my first rant. Hope you liked it.20 -
Our entire grad program has just been cancelled by management because the intake isn't "diverse enough" - and this is after we've interviewed everyone, taken them through assessment centre days, and decided who we wanted to hire.
It's ok guys, you can waste hundreds of man hours of employee time, and shun all the great candidates who put time and effort in (some of whom were the very minorities they're trying to supposedly encourage) - as long as you do it in the name of diversity. Anyone disagrees, you can just call them a massive dick for apparently wanting an all white male workplace 😠3 -
Story of my first successful project
Being part of a great team, I've shared in a lot of successes, one I am particularly proud of is my first attempt to use agile methodologies in a deeply waterfall-managment culture.
Time was June/July-ish and we applied for a national quality award where one key element in the application stated how well we handled customer complaint resolution.
While somewhat true (our customer service is the top-shelf good stuff), we did not have a systematic process in resolving customer complaints. Long story short,
the VP lied on her section of the application. Then came the 'emergency', borderline panic meeting (several VPs, managers, etc) to develop a process to better manage
complaints before the in-house inspection in December.
As most top priority projects go, the dev manager allocated 3 developers, 2 DBAs, and any/all network admins we would need (plus all the bureaucratic management that wanted their thumb in the pie).
Fast forward to August, after many, many planning meetings, lost interest, new shiny bouncing balls, I was the only one left on the project. The VP runs into the dev manager in the hallway and asks "Is my program done yet? If its not ready before December with report-able data, we will not win the award."
The <bleep> hit the fan...dev manager comes by...
Frank: "How the application coming along? Almost done?"
Me:"No, haven't really started coding. You moved Jake and Tom over to James's team, Tina quit, and you've had me sidetracked helping other teams because the DBAs are too busy."
Frank: "So, it's excuses. You really think the national quality award auditors care about your excuses? The specification design document has been done for months. This is unacceptable."
Me: "The VP finished up her section yesterday and according to the process, we can't start coding until the document is signed off."
Frank: "Holy f<bleep>ing sh<bleep>t! No one told you *you* couldn't start. You know how to create tables and write code."
Me: "There is no specification to write to. The design document is all about how they plan on reporting the data, not how call agents will be using the application to serve customers."
Frank: "The f<bleep> it isn't. F<bleep>ing monkeys could code against that specification, I helped write it! NO MORE F<bleep>ING EXCUSES! This is your top priority from now on!"
I was 'cleared' to work directly with the call center manager and the VP to develop a fully integrated customer complaint management system before December (by-passing any of the waterfall processes that would get in the way).
I had heard about this 'agile' stuff, attended a few conference tracks on the subject, read the manifesto, and thought "I could do this.".
Over the next month, I had my own 'sprints' and 'scrums' with the manager (at the time, 'agile' was a dirty word so I had to be careful of my words and what info I shared) and by the 2nd iteration had a working prototype.
Feature here, feature there (documenting the 'whys' and 'whats' along the way), and by October, had a full deployed application.
Not thinking I would get a parade or anything, the dev manager came back from a meeting where the VP was showing off the new app to the other VPs (and how she didn't really 'lie' on the application)
Frank: "Everyone is pleased how well the project turned out, except one thing. Erin said you bothered him too much with too many questions."
Me: "Bothered? Did he really say that?"
Frank: "No, not directly, but he said you would stop by his office every day to show him your progress and if he needed you to change anything. You shouldn't have done that."
Me: "Erin really seemed to like the continuous feedback. What we have now is very different than what we started with."
Frank: "Yes, probably because you kept bothering him and not following the specification document. That is why we spend so much time up front in design is so we don't waste management's time, which is exactly what you did."
Me: "We beat the deadline by two months, so I don't think I wasted anyone's time. In fact, this is kind of a big win for us, right?"
Frank: "Not really. There was breakdown in the process. We need better focus on the process, not in these one-hit-wonders."
End the end, the company won the award (mgmt team got to meet the vice president, yes the #2 guy). I know I played a very small, somewhat insignificant role in that victory, I was extremely proud to be part of the team. -
This is why we can never have enough software developers
It's true. No matter how many people learn to program, there will never be enough people who know how to program. They don't have to be very good at it either. It is now a required skill.
Minimum wage in first world countries is way above 5$ per hour. A Raspberry PI 3B costs 40$, or at most 1 day of work for the worst paid jobs. And it will run for years, and do routine tasks up to thousands of times faster than any employee. With that, the only excuse that people still do routine tasks, is the inaccessibility of coder time.
Solution: everybody should know how to write code, even at the simplest level.
Blue-collar jobs: they will be obsolete. Many of them already are. The rest are waiting for their turn.
Marketing people - marketing is online. They need to know how to set up proper tracking in JS, how to get atomic data in some form of SQL, how to script some automated adjustments via APIs for ad budgets, etc. Right now they're asking for developers to do that. If they learn to do that, they'll be an independent, valued asset. Employers WILL ask for this as a bonus.
Project Managers - to manage developers, they need to know what they do. They need to know code, they have to know their way around repositories.
QA staff - scripted tests are the best, most efficient tests.
Finance - dropping Excel in favor of R with Markdown, Jupyter Notebooks or whatever, is much more efficient. Customizing / integrating their ERP with external systems is also something they could do if they knew how to code.
Operations / Category Management - most of it would go obsolete with more companies adopting APIs as a way to exchange important information, rather than phone calls and e-mails.
Who would not be replaced or who wouldn't benefit from programming? Innovative artists.
A lot of it might not be now now, but the current generation will see it already in their career.
If we educate people today, without advanced computer skills and some coding, then we are educating future deadbeats.
With all this, all education should include CS. And not just as a mandatory field or something. Make it more accessible, more interesting, more superficial if needed. Go straight to use cases, show its effectiveness in the easiest way possible. Inquisitive minds will fill in the blanks, and everyone else will at least know how to automate a part of their work. -
Question: is it common for lead software engineers to mostly do paperwork or is that just a quick of my current program?
Where I work it is very common for those titled "software leads" to be almost completely hands off the software. They deal in hiring, fielding user comments and commitments, and scheduling. I would like to be a lead but I was always under the assumption that dev leads had more of a design and/or architect role. Sort of a big picture thing rather than middle management which is what this feels like. -
tl;dr i am proud of my universal program but annoyed it won't get appreciation.
<brag type='slightly'>the last three days i refactored my various snippets to a kind of modular and scalable software package. restricted to a rigid company system i make use of the technologies i feel confident in. so i created a javascript app that can be used with internet explorer. it is a neat tool to work smarter and mainly to make repetitive writing tasks efficient using predefined textblocks that have automated linguistic adjustments and are multilingual usable. after refactoring it is possible to extend any desired functionality by just adding another module. i learned a lot about implementing separated data structures, data processing, output and asynchronous script loading (and the annoying limitations of ie11).</brag>
i kept in mind that this tool might not only help my personal duties to be done more efficient but also might come in handy to all my colleagues having similar tasks to do. the downside is my colleagues having irrational computerphobia and i know for sure they will proceed to do these repetitive writings manually resulting in inconsistencies and an inefficient time management. while my wise wife tries to convice me that at least i had fun coding this stuff and having it supporting me with annoying tasks, it still bothers me being the only user, as it means no progression for the company. it riddles me how the colleagues, acknowledging us all being craftspeople in the first place, avoid use of computers whenever possible and rather rely on medieval working flows.
i find it quite amusing to be the 'can you fix my printer'-guy, but i just cannot handle this attitude. and everyone complains about having so much to do. get your shit together and start clicking these few buttons goddammit! -
Three hours of debugging the program.
I also wrote a thread in a forum to ask for help explaining all the test I made.
My database is working in Sql Management Studio but not in the code. It done well only using the trusted connection.
The issue? I was using the windows note (Win+v) to paste the connstring since the beginning and in the string there is a / instead of \ in the instance name. I'm writing here to not smash everything...1 -
I'm feeling burnt due to the lack of direction at my job instead of overwork.
I'm working as a data scientist at a large corporation and have been remote for a little over a year. I'm very savvy at programming and other technical skills but my manager wants me to develop my leadership skills and want me to move to a management role eventually. So he's been kinda "grooming" me to take on more leadership responsibility in the projects I'm currently involved in.
However, to be honest, I'm a little torn about getting more management or leadership responsibilities. I'm an extreme introvert and absolutely abhor meetings and having the same thing to people all the time and this sort of things stresses me out very easily. My manager seems set on pushing me towards pursuing a path towards leadership and just basically assumed that this is what I want out of my career and started putting me in the deep end without asking me what I want.
I really want to voice my honest thoughts about what I really want to do in my career (to be a technical specialist rather than a manager) but I've kinda procrastinated over the past year when he first started "grooming" me for a leadership role and it's my bad that I didn't tell him earlier.
Right now, I'm thrown in the deep end. I'm given a lot of projects without much of any direction and I'm asked to figure out the people I need to reach out to, the types of meetings I need to set with them, the relationships I need to develop both in and out of my department, etc. However, my real passions lie in writing code, fixing bugs, building models, understanding new technologies and applying them to the business, etc.
On paper, I'm involved in a ton of projects and I seem to be a really busy worker. But right now, I'm having a lot of difficulty reaching out and developing relationships with people that I barely have any actual work to do during the day, because I'm constantly waiting for replies from people or for permission or red tape to get some key information or access to a system in order for me to build something like a model or a program for a particular project. I'm spending maybe 1 or 2 hours of my workday actually "working" which is attending meetings, reading emails, etc., reaching out to someone for the n-th time (even though they continue to ignore me), etc. And that's because I'm blocked on all of my projects - I need an essential piece of information, data, or access to a system or server and the person I'm reaching out to to get this isn't responding. I brought this up with my manager and he says he's gonna try to reach out to these people to help me but so far, it doesn't seem like his help has been effective as I'm continuing to wait.
Though I get paid pretty well, I feel guilty logging in to work everyday and doing very little work, not because I'm lazy but because there really isn't much work for me to do because I'm waiting on so much here and I'm at a point where I can't make any progress in any of my projects without the approvals or other critical information that others aren't providing me.
I know I probably should find another job and I'm currently looking but in the meantime, is there anything else that I should be doing at my current job to hopefully make this situation better? -
My first job was through a technology "Graduate Training Program" at a large bank. We were sold on the job being told that there would be a month of corporate training before getting to work. You know, stuff like presentation skills and Myers Briggs and actual useful stuff. And yeah, they did have that for like two days of the month.
The rest was the most bullshit work to basically kiss-ass to upper management. Having to analyze their commercials and explain how amazing they were and why (they sucked). Explaining a portion of the business to upper management.. you know- the business they knew because they are executives in it- but it had to be "fun". We were stuck making board games and rap songs to these things to make an ass of ourselves in front of executives.
Then after that I was stuck working on VB6 programming with a Cobol mainframe backend. So fucking awful. -
so recently i have been through memory management hell. maybe i should rethink about pointers and stuff.
long story short: i have done a calendar app using SDL2 and the program is written in C++. when rendering textures using fonts i referenced null pointers to the font.
i will implement events in the future and if you have any suggestions or some advice leave it in the comments, the feedback helps me a lot!
anyways you might give it a try (i am sorry about the makefile not working, i built the app on windows and needed to link against the folder where sdl is located): https://github.com/zetef/calviewer3 -
Just built a solid desktop app for MacOS with Flutter that's worthy of shipping. I gotta say I'm pretty stoked about it, even if it isn't nearly as dope as LOIC. Haha chargin muh lazers!
I'll get some screenshots up soon!!
I also wrote a comple CLI interface for Firebase management using Python. Advanced auth abilities, CRUD capability, full json import/export, verification/password resets, you name it. Well, except full Firestore/mobile OTP features but it's still a win. Actually dicked around and made a cool little Firebase chat program in the terminal with the Python interpreter.
Finished up my first apps in React, React-Native and Ember, my 2nd with Electron, and also got my first Firebase hosted site up and running. Solid day!!! Cheers to that. And cheers to all of you amazing bastards!3 -
Sometimes knowing how to program has this weird effect where you pick apart all tech that has some cross over into your field. I rarely visit a website without seeing something that makes me think, “who the hell thought that was a good idea”.
Lately though, as I learn more about the management side of things, I can see many more reasons that stupid things end up in good products. Lack of time and trying to over-engineering to cater for some odd edge case being the 2 biggest killers.
In 2018 I’m going to be a bit nicer about silly technical mistakes.2 -
I signed up for a uni lesson on MATLAB, the prof just changed his mind because he is braindead enough not to know MATLAB is not free, and decided to go with fucking C, because you know, there hasn't been a fucking assignment in my uni that wasn't in C except the OOP one. Miss me with that shit. I'm now going to develop automatic memory management and OOP libraries in C because if I write another program without proper OOP I will kill myself.4
-
One of my Computer Science modules this year revolved around completing a team project, and one person in the team basically fucked it up for all of us in the last minute.
We had to create a simple task management app for a fictional company, the university did not care about how the program looked and all that mattered was if the app is functional or not. The app relied heavily on a database, so all we basically had to do was get, modify, and add data from a database. Now this person did his part of the programming, but with an outdated database model and did not even test his code as he said MySQL wasn't working on his home computer.
2 days before the final deadline is when we decided to merge everything together in the git repo (as that's when the rest of us finished our tasks), and that's when we found out none of his code worked. We then spent the next 48 hours with little sleep to try our best to fix everything, but unfortunately due to his tasks carrying a majority of the complexity of the program we couldn't fix it all in time and we ended up losing roughly 50% of the marks.
This all probably could have been avoided if one person in the team did look at his git branch properly, but this person was the programming lead of the project and didn't ask for any help at any point until the last moment when we merged everything together. Oh well though, at least I've learnt better for the next team project that I do2 -
so, a new day, a new ERP software to rant about:
this one features an email feature (heh) but with a catch.
only pop3, no imap, if you want ssl the software suggest that you use a 3rd party program, also every user has to be logged in by the admin cause they assume the sysadmin knows all passwords cause he has "password lists"
i called them to ask why their software is what it is, they answer "there was never a need to develop an IMAP functionality, SSL would be so much work and it never became a problem that the sysadmin didnt know all passwords"
in unrelated news, does anyone know a nice sub 100K ERP software with CRM, Material Management and Offer/Order Management that runs on a local server and offers german support for a company in the 50 to 500 worker bracket? -
These past few days were the first days in ages that I actually had time to work on a project. It is also the first time in ages that I pulled all nighters to code. Being reminded of the feeling of putting on some headphones and hacking away on this project was the best feeling I've ever had in so damn long. God I love programming.
If you wanted to know what the project is:
We got an end of year project in comp sci at school and we got a lot of freedom for what we were required to do so I got the idea of creating bank management software cause it seemed pretty simple. But then I started the project and realized how much more I could do with this. So I've been working on an entire bank management program including account creation, database creation, file encryption, payment options, and credit/debit card attaching. It is currently text based but I'd like to create a gui in the time we have left to finish. I'd also like to incorporate more features that come to mind. -
With the current economy in its rocky state, it is no surprise that firing levels have reached new highs in the world. According to a recent study conducted in the UK, former managers and workers who lost their lifelong jobs were able to get past their problems simply by keeping a positive attitude in mind. The theory of “mind over matter” is more applicable here than it is in many other situations as workers strive to get back a life they once had. If you have recently lost your job, you may want to focus on getting your spirits up, for instance, you can ask for help with resume writing services such as this one https://resumebros.com/, rather than spiraling into depression. By separating yourself from your former life, you may be able to see better success.
This study was published in “Organization Studies,” a journal that circulates in the UK. Researchers found that people who were able to see their job loss as a new start in life were much more capable of moving on and seeing success again. These patients viewed the change as a way to become self-employed or an excuse to volunteer and better their lives. Taking on a positive step led them to a reduced amount of trauma when compared to those that dwelled on the job loss.
The study consisted of men and women between the ages of 49 and 62 who were once senior workers in their industries with highly successful careers before them. I realize that most of the people reading this will be younger than that, but the theories from the study can resonate in any age group. The men and women in the study all suffered devastation after being laid off, and they coped with that devastation in different ways. Those that were able to separate themselves from their old jobs found it much easier to separate themselves from the pain of the loss.
All of these participants were enrolled in a program for older managers that recently encountered unemployment. The program was government funded and designed to allow out of work individuals to pick up with their lives and start again. The participants that were least successful with the program were the ones that saw their job loss as the end of their working time altogether, as if it was going to be the sole destruction of their lives. They did not handle emergency management well. Their negative attitudes forced them to cope worse than the positive attitudes of other participants.
As a whole, the study aimed to show that coaching, over the course of time, can help unemployed men and women find ways to get past their financial stumbles and get back into the work force again. Those who are willing to embrace the coaching can find themselves back into a state of financial success much faster than those who wallow in their situation. As long as these individuals can see themselves as capable, driven, and intelligent people who happen to be unemployed, they are usually able to make it back to where they need to be in life.
You can apply all of this to your own life and your path toward the future. If you lose a job that you assumed would help you after graduation, move on to something else. You may end up in a better place in the end. I recently lost a huge client of mine that paid me roughly $4,000 a month. I was devastated and a little panic stricken after the loss, but that allowed me to apply for new work with new clients. I now make twice the money from about half the work, all because I wasn’t reaching out to all my opportunities in the past. You may experience the same revelation if you keep a positive attitude. -
So we're supposed to test even the most imporbable edge cases to make sure that our software is reliable. But there is a limit. We let a marketing intern go bug hunting. We use the same component in two tabs of our SPA, but we distinguish them through some parameters. The intern found that if you switch back and forth between those two tabs super fast a couple of times, the program for some reason confuses those two tabs and swaps them. Now management has listed it as a priority. When are the customers _ever_ going to do that?!4
-
Been applying with a couple of colleges for a certificate course on data management and the admissions coordinator is being a complete fuck! Called and left a message to which he offered to arrange a phone call if I felt like I needed it (I didn't at the time) and so I politely ended that particular convo by saying "thank you and I'll be sure to send any questions your way" (I think a gesture of good faith considering he did offer a phone call).
I sent him a couple questions the day after asking politely application dates and then another the next day (he hadn't replied at that point, but I suppose it's better to show interest than not, especially since I'm entering into this with not - a - engineering /computer science background) about whether a campus tour is available and also about funding. And the guy just hasn't replied! It's been two full days now and I'm pretty sure that's not exactly kosher for a program coordinator to do. Like was I being too persistent with the emails (3 in total) instead of just waiting it out in the dark? (the issue is I'd need to wait until the next cohort so May of next year instead of January so I'm in a rush!)
It doesn't help that it turns out that the program coordinator is a professor at the college 🤔 so I think maybe he's got some big d*** issues1 -
Boss: management needs this applications report changed
-2 weeks later of revamping the program
Boss: So we decided we are going to abandon the program all together. At least you learned some things.1