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 - "best solution"
-
Got assigned an intern to mentor him, with an explicit order not to do any of the legwork for him.
We start out with some fuzzy requirements. Intern starts overengineering a generic solution, so I make out a best architecture that conforms to the business requirements and I explain it to the intern why are we going to use such approach and tell him how we are going to do it in three phases.
I explain the intern the first phase, break it down in small tasks for him and return to my projects...
After a couple of days of no words from the intern, I decide to check up on him to see how is he progressing, only to hear him complaining the task is boring. So, instead of doing the assigned tasks, he decided he should do a "design" for a feature I told him explicitly not to do, since it is going to be designed by the design team later on.
I explain it to the intern that we have to do the boring task first because we can't proceed with the next phase of the implementation without the necessary data from the phase one.
Intern says okay and assures me he got it now. Few days later, I check up on him, and he tells me he feels he is doing all the work and that I don't contribute to the project. I call up my boss and tell him intern wants a meeting. Since I was working from home, I quickly pack my things and head to the office. Boss talks to the intern before I managed to get to the office. Once I got there, I meet the intern, and he tells me everything is okay. I ask what did the boss say to make things okay all of a sudden, and he tells me he said we are a team now. Our company has a flat hierarchy model, so he tells me he doesn't feel he needs a mentor, that we are both equal, and that I have no idea how to work in a team, and then proceeds to comfort me on how human interaction is hard and that I will learn it one day... I was like wtf?
I tell him to finish the phase one of the project and start with the phase two, and I leave home again.
I call up my boss and ask him what did he say to the intern, and he says: "nothing much, just explained the project a little bit and how it fits in the grand scheme of things.". I ask about the equal team members thing, and me not being a mentor any longer, the boss goes wtf, saying he never said anything about that to him.
So the kid can't focus on a single task, over-engineers everything and doesn't feel he can learn anything from developers with more experience, doesn't want to obey commands, and also likes to lie to manipulate others.
Tomorrow we'll decide what to do with him...
Sorry for the long rant, it was a long stressful day.86 -
A rare bug appeared. It was my duty to finish it.
SH = Manager
SH: So when do you think you can finish the task?
Me: I still have to analyze the problem. Give me a moment and I'll get back to you.
SH: Alright.
*An hour later*
SH: *Approaches my desk* Have you found the source of the problem?
Me: Not yet. Please give me some more time.
SH: Ok.
*An hour later*
SH: *the approach* You found it yet?
Me: Yes, I've found the the source of the problem, But... *explains the problem and thus concluding that it's a complicated bug*
SH: Can you finish it by tomorrow?
Me: I'll do the best I can but I am not entirely sure if I can finish it by tomorrow.
SH: OK great!
*The next day*
SH: *Le approach* Hey I have a colleague here that may be able to solve the problem, he has skills with XYZ. Ok, I will leave you two at it then. *the leave*
Helper: So can you tell me about the issue here?
Me: *explains the bug and the source of the problem*
Helper: Have you tried solution A?
Me: Yes sir, but it yields a different output... *explains what happened with solution A*
Helper: Well, that won't work. What about solution B?
Me: I've tried that, too. *Another lengthy explanation*
Helper: Welp, ok. I'll get back to you on that.
(...But he never came.)
*A few hours later*
SH: *A.P.P.R.O.A.C.H.* Hey I have this team lead from another department. I think he can help you out on this one. *L.E.A.V.E.*
Helper 2: What seems to be the problem?
Me: *Explains again with all the solutions I tried but failed*
Helper 2: Wow. That really seems to be a complicated problem.
~~
Me (In my head): -_-
~~
Helper 2: Listen, I need to get back to my team. I'll keep you posted if I happen to find a solution for your problem alright?
Me: Alright thanks.
*Towards the end of the day*
SH: *APPROACHHHH* Have you resolved the bug yet?
~~
Me (In my head): You made me spend half the FUCKING day explaining to these people who didn't even give a piece of FUCKING SHIT to contribute to the problem and you are asking me if I am done with this FUCKING BUG? FUCK YOU, YOU SON OF A -
~~
Me: No, it is not finished yet..
SH: You have to finish this because we don't have tomorrow.
~~
Me (In my head): SHDIFHWISGSIFGSISBAUDBEIQBDIWGFIEBWIDHWIQBDOSBCISBDOSHDIAGSUSVDIFBDKDJWIQKDBDIDGSUWVDIABDIXBSIDBDIDBWUWGUSVDUWVDJQBDUDVWISHDUWVFG
~~
I went home for the day.21 -
Recently had an interview with a company. At some point an SELinux question came up and while I didn't provide the best answer ever (I'm hardly familiar with SELinux and mentioned that as well beforehand so they knew), it was technically correct and the reaction of the interviewers was funny.
TI (technical interviewer): say your php script isn't executed and after a while you find out that SELinux is blocking php script execution, how can you fix that?
Me: setenforce 0...? (essentially disabling SELinux at all)
TI: disabling it entirely for getting php execution to work?! That doesn't sound like a good solu...
HRI (HR (non technical) interviewer, also present): *turns to TI* - but, would it solve the problem?
TI: 😐 well, yes, but... That's a bad thing to do so I wouldn't count is corre..
HRI: *still aiming towards TI* but you simply asked him for a way to solve the php execution issue, would his answer work? Regardless of whether it's the best or worst solution, would it be a solution which works?
TI: well... yes...
HRI: then he answered correctly I'd say, next!
(yes, I'm aware that my answer wasn't good as for security at all but it would have solved that problem which is what was asked)18 -
My CEO: "So! You are the new guy we hired to design and manage the implementation of our new state of the art super-duper fancy ERP solution with badass Business Intelligence systems to grow our company which already spans over several localities across the county, that has to live for at least the next 12-15 years?
Please remember that the Windows Server in the rack in the basement needs replacement soon, and that our new fancy solution must not in any way utilize cloud-technology or SaSS! I don't like that! I think it's a scam! We store everything on premises, own our infrastructure and we buy our software...Because I think that is best!"
Me: "So... let me get this straight: You want me to build you a one-off, concept sports car that can outperform a Lamborghini using only plywood, duct-tape and a donkey cart?"
He walked off... I may need a new job next week!14 -
Summary of the summary: Boss is an asshole. Root gets angry; boss leaves instead of picking a fight for once. This makes Root sad (and really angry).
Summary: Root has another interaction with her boss. The boss is an asshole. Root is a bitch. Root would have been so so so much more of a bitch if the boss actually fucking responded. Root is sad this didn't happen. Root might have gotten fired. That would have made Root happy. :<
-------------
Le wild blackout appears!
-- Conference call (the short-short version) --
Boss: *freaks out* Fix it! Why aren't you fixing it? You have to fix it.
Me: I'm already fixing it. 😕
Boss: You have to fix it! This is important!
Me: Then let's get off this call so I can focus on fixing it!
Boss: Okay but fix it! *begrudgingly hangs up*
-- Slack --
Me: (posting a running log of what I'm doing) This is what i discovered. this is the cause. these are the possible fixes. I picked this one because it's quick and has few consequences, though it may break ____ so it'll need followup fixes. I'll do those tomorrow. Blackout resolved!
Boss: (apparently doesn't even noticed I fixed his shitty service)
-- Next day --
Boss: I want you to work on [stupid shit] instead.
Me: But what about the followup fixes?
Boss: Top priority! because customer service!
Me: ... fine.
-- Next week (verbatim because wtf) --
Boss: Did we test that [resolution] on ______? No one thought to test this. It didnt cross anyones mind at all? Either you guys can make good decisions and document concerns or I have to be part of every decision [...]. But this is basic. SHould have been a team heads up and said if we are switching this what can it break and can we test it. [sic]
Me: Did you want me to resolve the blackout quickly and allow people to actually use our service, or spend two days checking everything that might possibly have gone wrong? I weighed the possibilities and picked the solution with the quickest implementation with the fewest consequences. You're welcome.
Me: (Quotes boss's "SHould have been a team heads up" and links my "this is what could go wrong" heads-up in Slack)
Boss: (pretends not to even notice)
Boss: (talks about customer service related crap)
What a fucking loser.
I'm so angry he didn't respond and start in on me over it. I wanted to tear him to shreds in front of everyone.
Related:
He tried adding another huge project to my plate earlier today, and I started flipping out on him for all these shitty sales features he keeps dumping on me in place of real work that i still get blamed for not finishing. The contractor stepped in before it got too heated, though, which is probably best because my reaction was pretty unprovoked. The above rant, though? Asshole doesn't read, just blames and yells when he's angry.
I really hate him.20 -
Friend : This is our logo for the site you are building for us.
Me: Wtf!! This is just a picture with text on it, do you have copyright of this picture?
Friend : who cares, we found it on google and we liked it.
Me: It may create trouble later
Friend: nothing...Just us it, we don’t have $150 for logo design
Me:🧐
After few weeks
Friend: Hey best, we have problem with logo, there is this guy who keep emailing us about copyright, any advice
Me: you know the solution the $1501 -
Here's my piece of advice for new devs out there:
1 - Pick one language to learn first and stick with it, untill you grasp some solid fundamentals. (Variables, functions, classes, namespaces, scope, at least)
2 - Pick an IDE, and stick with it for now. Don't worry about tools yet. Comment everything you're coding. The important thing is to comment why you wrote it, and not what it does. Research git and start using version control, even when coding by yourself alone.
3 - Practice, pratice and pratice. If you got stuck, try reading the language docs first and see if you can figure it out yourself. If all else fails, then go to google and stackoverflow. Avoid copying the solution, type it all and try to understand it.
4 - After you feel you need to go to the next level, research best practices first, and start to apply them to your code. Try to make it modular as it grows. Then learn about tools, preprocessors and frameworks.
5 - Always keep studying. Never give up. We all feel that we have no idea of what we are doing sometimes. That's normal. You will understand eventually. ALWAYS KEEP STUDYING.9 -
Worst thing you've seen another dev do? Long one, but has a happy ending.
Classic 'Dev deploys to production at 5:00PM on a Friday, and goes home.' story.
The web department was managed under the the Marketing department, so they were not required to adhere to any type of coding standards and for months we fought with them on logging. Pre-Splunk, we rolled our own logging/alerting solution and they hated being the #1 reason for phone calls/texts/emails every night.
Wanting to "get it done", 'Tony' decided to bypass the default logging and send himself an email if an exception occurred in his code.
At 5:00PM on a Friday, deploys, goes home.
Around 11:00AM on Sunday (a lot folks are still in church at this time), the VP of IS gets a call from the CEO (who does not go to church) about unable to log into his email. VP has to leave church..drive home and find out he cannot remote access the exchange server. He starts making other phone calls..forcing the entire networking department to drive in and get email back up (you can imagine not a group of happy people)
After some network-admin voodoo, by 12:00, they discover/fix the issue (know it was Tony's email that was the problem)
We find out Monday that not only did Tony deploy at 5:00 on a Friday, the deployment wasn't approved, had features no one asked for, wasn't checked into version control, and the exception during checkout cost the company over $50,000 in lost sales.
Was Tony fired? Noooo. The web is our cash cow and Tony was considered a top web developer (and he knew that), Tony decided to blame logging. While in the discovery meeting, Tony told the bosses that it wasn't his fault logging was so buggy and caused so many phone calls/texts/emails every night, if he had been trained properly, this problem could have been avoided.
Well, since I was responsible for logging, I was next in the hot seat.
For almost 30 minutes I listened to every terrible thing I had done to Tony ever since he started. I was a terrible mentor, I was mean, I was degrading, etc..etc.
Me: "Where is this coming from? I barely know Tony. We're not even in the same building. I met him once when he started, maybe saw him a couple of times in meetings."
Andrew: "Aren't you responsible for this logging fiasco?"
Me: "Good Lord no, why am I here?"
Andrew: "I'll rephrase so you'll understand, aren't you are responsible for the proper training of how developers log errors in their code? This disaster is clearly a consequence of your failure. What do you have to say for yourself?"
Me: "Nothing. Developers are responsible for their own choices. Tony made the choice to bypass our logging and send errors to himself, causing Exchange to lockup and losing sales."
Andrew: "A choice he made because he was not properly informed of the consequences? Again, that is a failure in the proper use of logging, and why you are here."
Me: "I'm done with this. Does John know I'm in here? How about you get John and you talk to him like that."
'John' was the department head at the time.
Andrew:"John, have you spoken to Tony?"
John: "Yes, and I'm very sorry and very disappointed. This won't happen again."
Me: "Um...What?"
John: "You know what. Did you even fucking talk to Tony? You just sit in your ivory tower and think your actions don't matter?"
Me: "Whoa!! What are you talking about!? My responsibility for logging stops with the work instructions. After that if Tony decides to do something else, that is on him."
John: "That is not how Tony tells it. He said he's been struggling with your logging system everyday since he's started and you've done nothing to help. This behavior ends today. We're a fucking team. Get off your damn high horse and help the little guy every once in a while."
Me: "I don't know what Tony has been telling you, but I barely know the guy. If he has been having trouble with the one line of code to log, this is the first I've heard of it."
John: "Like I said, this ends today. You are going to come up with a proper training class and learn to get out and talk to other people."
Over the next couple of weeks I become a powerpoint wizard and 'train' anyone/everyone on the proper use of logging. The one line of code to log. One line of code.
A friend 'Scott' sits close to Tony (I mean I do get out and know people) told me that Tony poured out the crocodile tears. Like cried and cried, apologizing, calling me everything but a kitchen sink,...etc. It was so bad, his manager 'Sally' was crying, her boss 'Andrew', was red in the face, when 'John' heard 'Sally' was crying, you can imagine the high levels of alpha-male 'gotta look like I'm protecting the females' hormones flowing.
Took almost another year, Tony released a change on a Friday, went home, web site crashed (losses were in the thousands of $ per minute this time), and Tony was not let back into the building on Monday (one of the best days of my life).10 -
This is dedicated to all Webdevs, especially those WordPress fanboys.
I was reflecting on some things since I do more frequent freelance jobs at the time. And I have to admit: people are fucking crazy.
I had some serious talk with customers and some serious talk for people I work as subsidiary.
The average customer thinks a nice webpage costs I'm 9-50 bucks. They got some shitty Webhosting for 1-5$/month including domain and think they are set.
They have unclear visions about what they actually want, it all boils down to "I like the design". I made a page for someone who just posted images, no text nothing and I told him a trillion times NEEDS some text, even a fucking picture description would be sufficient, else he'll never score anything at google.
Ofc it got denied, now he's bitching how nobody finds the site when they google his name. The other thing is that Wordpress became the solution for everything.
I'm a fucking certified magento developer and I hate magento with a passion. Magento is an overabstracted clusterfuck and believe me, I did the certification I had to learn more than average about the core. But damn, don't slap woocommerce on everything.
Narrowninded fucktards, the cheap out of the box solution isn't always the best.
Don't cry if you got hacked because you were too dumb to upgrade your wordpress. Don't tell me to do some "enhancements" on a server you probably share with 100 other uses. I can't fix your Webserver with your shitty ftp account.
I also hate WordPress with a burning passion. Cum guzzling cavetroll it is. It has it usages, but don't rely on a core So small every kind of extra functionality has to somehow tinkered on it and then expect it to work flawlessly and for 10$ price.
Of course you can buy a theme that, if it would have been special made for you cost 800$ or more, but it wasn't. It just looks like it from the outside. If you want customization you are at the mercy of the option it provides. I can't even tell how many times i spent whole evenings explaining how their shiny template works. Just to do some crazy shit with JavaScript like rearranging domelements because it didn't work as expected.
I still stay to my word. Nothing great has been nor will be created with a Wordpress core. Don't tell me how some great stuff has been achieved. Or wait, please do so. But before you do think about if that wouldn't been faster, cheaper, more reliable , etc... if done with a framework like symphony or laravel... or even zend or cake.
And that brings me back to the point:
Is cheap and "out of the box" really what you need and desire? As customer and as developer?6 -
What happens when you change the service call center to 100% AI
AI: Hello, this is the After Service center. How may I help you?
Angry customer: Hey! Do you count this as a product? Do you sell this to use it? F*** shit?! Bring the manager now!
AI: Thank you for your response. We will connect you to the Development team.
Angry customer: Uhhhhhh
AI: Hello, this is the development team. Please state your problems.
A bit relaxed customer: Umm, so this product you guys are selling stops working sometimes, so...
AI: We are sorry, but for the product misfunctions, please contact the After Service. We will connect you to After Service.
F***ed out customer: Wait, I just came from the After Service!
AI: Hello, this is the After Service center. How may I help you?
Angry customer who is ready to throw the phone: I said that the product is not working, and I asked to bring the freaking manager in the line!
AI: Thank you for your response. We will connect you to the Development team.
Customer throwing the phone and shouting: F*********************************************************************************************!7 -
Well, here's the OS rant I promised. Also apologies for no blog posts the past few weeks, working on one but I want to have all the information correct and time isn't my best friend right now :/
Anyways, let's talk about operating systems. They serve a purpose which is the goal which the user has.
So, as everyone says (or, loads of people), every system is good for a purpose and you can't call the mainstream systems shit because they all have their use.
Last part is true (that they all have their use) but defining a good system is up to an individual. So, a system which I'd be able to call good, had at least the following 'features':
- it gives the user freedom. If someone just wants to use it for emailing and webbrowsing, fair enough. If someone wants to produce music on it, fair enough. If someone wants to rebuild the entire system to suit their needs, fair enough. If someone wants to check the source code to see what's actually running on their hardware, fair enough. It should be up to the user to decide what they want to/can do and not up to the maker of that system.
- it tries it's best to keep the security/privacy of its users protected. Meaning, by default, no calling home, no integrating users within mass surveillance programs and no unnecessary data collection.
- Open. Especially in an age of mass surveillance, it's very important that one has the option to check the underlying code for vulnerabilities/backdoors. Can everyone do that, nope. But that doesn't mean that the option shouldn't be there because it's also about transparency so you don't HAVE to trust a software vendor on their blue eyes.
- stability. A system should be stable enough for home users to use. For people who like to tweak around? Also, but tweaking *can* lead to instability and crashes, that's not the systems' responsibility.
Especially the security and privacy AND open parts are why I wouldn't ever voluntarily (if my job would depend on it, sure, I kinda need money to stay alive so I'll take that) use windows or macos. Sure, apple seems to care about user privacy way more than other vendors but as long as nobody can verify that through source code, no offense, I won't believe a thing they say about that because no one can technically verify it anyways.
Some people have told me that Linux is hard to use for new/(highly) a-technical people but looking at my own family and friends who adapted fast as hell and don't want to go back to windows now (and mac, for that matter), I highly doubt that. Sure, they'll have to learn something new. But that was also the case when they started to use any other system for the first time. Possibly try a different distro if one doesn't fit?
Problems - sometimes hard to solve on Linux, no doubt about that. But, at least its open. Meaning that someone can dive in as deep as possible/necessary to solve the problem. That's something which is very difficult with closed systems.
The best example in this case for me (don't remember how I did it by the way) was when I mounted a network drive at boot on windows and Linux (two systems using the same webDav drive). I changed the authentication and both systems weren't in for booting anymore. Hours of searching how to unfuck this on windows - I ended up reinstalling it because I just couldn't find a solution.
On linux, i found some article quite quickly telling to remove the entry for the webdav thingy from fstab. Booted into a root recovery shell, chrooted to the harddrive, removed the entry in fstab and rebooted. BAM. Everything worked again.
So yeah, that's my view on this, I guess ;P31 -
A real interaction I just had...
Team Member: "Can you handle this ticket for a bug fix?"
Me: "Whats the problem?"
TM: "We aren't exactly sure..."
Me: "Ok, so can you show it to me?"
TM: "We can't get it to happen again, and when it does the machine freezes and we can't debug it..."
Me: "So, if I find a fix then how do we test to make sure it worked?"
TM: "I'm not sure..."
Then today,
Product Manager: "How's that bug fix going?"
Me: "Well, let's see. The problem still hasn't been defined. I have never been able to recreate the issue. I have a hacky fix in a PR..."
PM: "Great, so we can deploy today?!?"
Me: "No, because we have no way to reproduce or test this issue at all..."
PM: "Do you think your fix will work?"
Me: "Honestly, no. If you're asking for my opinion then you can have it. IMO this is NOT a bug fix but a change to how the system operates altogether. This system was built by someone who didn't know what they are doing. We have done our best with it but it is a house of cards. And now the solution is to replace a card at the bottom layer. It is likely that no matter what fix we do (even when we can fucking test it) that it will topple the house of cards..."
PM: ~Looking at me in disbelief~
Me: "If you ask me for my honest professional opinion then you will get it. Keep that in the future if that honest response was outside what you expected."
PM: "I will do that, thanks for your assessment"
Where do we go from here? God only knows.
Praise Joe Pesci5 -
I'm 20, and I consider myself to be as junior as they come. I only started programming seriously in June 2016,and since then, I've been doing mainly Android Work, and making my own servers and backends(using AWS/Firebase nd stuff).
For the first time in life, I was approached by a recruiter for a company on linkedIn. They "stumbled upon" my Github profile and wanted to see if I was interested in an internship opportunity. This company is an early stage start up, by that I mean a dude with an idea calling himself the CEO and a guy who "runs a tech blog" and only knows college level C programming (explaination follows).
So they want me to make the app for their startup. and for that, I ws first asked to solve a couple problems to prove my competence and a "technical interview" followed.
They gave me 3 questions, all textbook, GCD of 2 numbers, binary search and Adding an element to the linked List, code to be written on a piece of paper. As the position was that of an Android Developer, I assumed that Java should be the language of choice. Assumed because when I asked, the 'tech blogger' said, yeah whatever.
But wait, that ain't all, as soon as I was done, Mr. Blogger threw a fit, saying I shouldn't assume and that I must write it in C. I kept my cool (I'm not the most patient person), and wrote the whole thing in C.
He read it, and asked me what I've written and then told me how wrong I was to write 2 extra lines instead of recursion for GCD. I explained that with numbers large enough, we run the risk of getting a stackoverflow and it's best to apply non recursive solution if possible. He just heard stackoverflow and accused me of cheating. I should have left right then, but I don't know why, I apologized and again, in detail explained what was happening to this fucktard. Once this was done, He asked me how, if I had to, I'd use this exact code in my Android App. I told him that Id rather write this in Java/Kotlin since those are the languages native to Android apps. I also said that I'd export these as a Library and use JNI for the task. (I don't actually know how, I figured I can study if I have to).
Here's his reply, "WTF! We don't want to make the app in Java, we will use C (Yeh, not C++, C). and Don't use these fancy TOOLS like JNI or Kotlin in front of me, make a proper application."
By this I was clear that this guy is not fit to be technical lead and that I should leave. I said, "Sir, I don't know how, if even possible, can we make an Android App purely in C. I am sorry, but this job is not for me".
I got up and was about to leave the room, when we said, "Yeah okay, I was just testing you".
Yeah right, the guy's face looked like a howling monkey when I said Library for C, and It has been easier for me to explain code to my 10 year old cousin that this dumbfuck.
He then proceeded to ask me about my availability, and I said that I can at max to 15-20 hours a week since my college schedule is pretty tight. I asked me to get him a prototype in 2 months and also offered me a full time job after I graduate. (That'd be 2 years from now). I said thank you for the offer, but I am still not sure of I am the right person for this job.
He then said, "Oh you will be when I tell you your monthly stipend."
I stopped for a second, because, money.
And then he proceeded to say 2 words which made me walk out without saying a single word.
"One Thousand".
I live in India, 1000 INR translates to roughly $15. I made 25 times that by doing nothing more than add a web view to an activity and render a company's responsive website in it so it looks like an app.
If this wasn't enough, the recruiter later had the audacity to blame me for it and tell me how lucky I am to even get an offer "so good".
Fuck inexperienced assholes trying shit they don't understand and thinking that the other guy is shitsworth.10 -
Being told I’m not experienced enough to get a senior dev job I interviewed for.
Even though I aced the first 4 interview rounds, the tech test feedback was “the best solution they had ever seen”, and I’ve been a senior dev for 25 years.
Time wasting assholes.3 -
Someone on a C++ learning and help discord wanted to know why the following was causing issues.
char * get_some_data() {
char buffer[1000];
init_buffer(&buffer[0]);
return &buffer[0];
}
I told them they were returning a pointer to a stack allocated memory region. They were confused, didn't know what I was talking about.
I pointed them to two pretty decently written and succinct articles, the first about stack vs. heap, and the second describing the theory of ownership and lifetimes. I instructed to give them a read, and to try to understand them as best as possible, and to ping me with any questions. Then I promised to explain their exact issue.
Silence for maybe five minutes. They disregard the articles, post other code saying "maybe it's because of this...". I quickly pointed them back at their original code (the above) and said this is 100% an issue you're facing. "Have you read the articles?"
"Nope" they said, "I just skimmed through them, can you tell me what's wrong with my code?"
Someone else chimed in and said "you need to just use malloc()." In a C++ room, no less.
I said "@OtherGuy please don't blindly instruct people to allocate memory on the heap if they do not understand what the heap is. They need to understand the concepts and the problems before learning how C++ approaches the solution."
I was quickly PM'd by one of the server's mods and told that I was being unhelpful and that I needed to reconsider my tone.
Fuck this industry. I'm getting so sick of it.26 -
1.Run into issue
2.Go to Stack Overflow
3.Think of best way to phrase the question
4.Find solution while editing post
5.Bang head on desk3 -
Everyone's asleep.
I'm not tired, and coding sounds like the best thing ever right now. Figured out a solution to that blocking architecture issue, too. So: headphones on, blare Amon Amarth and Disturbed, bring up editor. It's time to work on that side project!
Best night in months.7 -
Public service announcement: Do not get married to your language, tools, or way of doing things. If there's an easier solution to something, try it before dismissing it. No language is perfect, and dumping everything on the responsibility of an API or framework can cause more headache then solve it.
Case in point: I love Java for backend programming, but node.js is a better solution to frontend programming then depending on JSP's and HTML within the same Java project. Less things go wrong and it's easier to debug issues.
There is no best programming language. Only best practices and using the right tool for the right job.
#exceptC++fuckthatlanguage
:^)15 -
That feeling when you finally celebrate closing your browser tabs because you know you've found the solution for your error.... best Feeling ever
-
"You claim you are a developer and don't know what firebase is? Pfft"
Words uttered by one of my classmates flexing on some 4th semester college inmates. I don't know what's more annoying his squeaky voice, the pretentiousness of using headphones as a necklace during class or that I was just like him when I was a freshman (minus the low hanging fruit flexing).
God fucking damn, I'm not even mad at his obnoxious pampered kid semblance, it's the irony of this enlightened fago falling into the god forsaken rat race. Why?
Because he hasn't been magnanimously disappointed by one of the most corrupt systems I've ever been witness of, yeah keep talking about firebase to the teacher who just nods pretending she knows what you are talking about.
I've had this same teacher before and your nice asynchronous ES6 express nosql solution will come last compared to all the WordPress templates she'll approve because they are pretty and all the time you invested, yeah, right into the crapper, seriously it would've been more satisfying to just masturbate everyday until Christmas break. I'm not pissed at him, annoyed by his semblance maybe, but I actually pitty him because the system will take a big shit on his face and he's just smiling.
Damn it, all these careers ruined by lazy ass professors who think leaving a shitload of diagrams as homework counts as teaching. And before any quirky brother interjects with "oh maybe your University is shit", "muh University verry gut u suk", you shut the fuck up! I know my university sucks even tho is "one of the best ones" by the corrupt media's standards, I'm here to vent about issues, real fucking issues happening in real corrupt systems, I'm taking about professors sexually abusing students, not going to classes, no centralized teaching systems, fucking chaos.
I'm happy for you if you feel good about the piece of paper you hang on your wall that certifies you as Bobby the guy who not only learned a shit load about computers, he also bent his ass so far for us and payed us so much money for it, it's funny he thinks himself as smart.
I know, I know, you went to an ivy league college, have a wonderful job and owe some money, good for you, some are not so lucky and I'll make sure those lazy asses who take advantage of the system lose their jobs.
I'm so sick of this shit we call "moodern educashion"7 -
!Story
The day I became the 400 pound Chinese hacker 4chan.
I built this front-end solution for a client (but behind a back end login), and we get on the line with some fancy European team who will handle penetration testing for the client as we are nearing dev completion.
They seem... pretty confident in themselves, and pretty disrespectful to the LAMP environment, and make the client worry even though it's behind a login the project is still vulnerable. No idea why the client hired an uppity .NET house to test a LAMP app. I don't even bother asking these questions anymore...
And worse, they insist we allow them to scrape for vulnerabilities BEHIND the server side login. As though a user was already compromised.
So, I know I want to fuck with them. and I sit around and smoke some weed and just let this issue marinate around in my crazy ass brain for a bit. Trying to think of a way I can obfuscate all this localStorage and what it's doing... And then, inspiration strikes.
I know this library for compressing JSON. I only use it when localStorage space gets tight, and this project was only storing a few k to localStorage... so compression was unnecessary, but what the hell. Problem: it would be obvious from exposed source that it was being called.
After a little more thought, I decide to override the addslashes and stripslashes functions and to do the compression/decompression from within those overrides.
I then minify the whole thing and stash it in the minified jquery file.
So, what LOOKS from exposed client side code to be a simple addslashes ends up compressing the JSON before putting it in localStorage. And what LOOKS like a stripslashes decompresses.
Now, the compression does some bit math that frankly is over my head, but the practical result is if you output the data compressed, it looks like mandarin and random characters. As a result, everything that can be seen in dev tools looks like the image.
So we GIVE the penetration team login credentials... they log in and start trying to crack it.
I sit and wait. Grinning as fuck.
Not even an hour goes by and they call an emergency meeting. I can barely contain laughter.
We get my PM and me and then several guys from their team on the line. They share screen and show the dev tools.
"We think you may have been compromised by a Chinese hacker!"
I mute and then die my ass off. Holy shit this is maybe the best thing I've ever done.
My PM, who has seen me use the JSON compression technique before and knows exactly whats up starts telling them about it so they don't freak out. And finally I unmute and manage a, "Guys... I'm standing right here." between gasped laughter.
If only it was more common to use video in these calls because I WISH I could have seen their faces.
Anyway, they calmed their attitude down, we told them how to decompress the localStorage, and then they still didn't find jack shit because i'm a fucking badass and even after we gave them keys to the login and gave them keys to my secret localStorage it only led to AWS Cognito protected async calls.
Anyway, that's the story of how I became a "Chinese hacker" and made a room full of penetration testers look like morons with a (reasonably) simple JS trick.9 -
My favorite IT story (not mine) is that the server needed to be rebooted whenever it froze completely. The best solution? Get an old PC that had a CD drive, and every time it loses connection to the server, eject the CD tray which had a poking stick attached that hits the reset button.3
-
Pretty new at the job still.
-”Hey, best practice to do X?”
”Just check how we did it in previous code”
*checks whole bloody project, everything done in 500 different ways by 20 people*
*selects what seems as the best solution already used*
”Ya, you should have done X like this instead”
😒6 -
Prologue
My dad has an acquaintance - let's call him Tom. Tom is an gynecologist, one of the best in Poznań, where I live. He's a great guy but absolutely can not into tech of any kind besides his iPhone and basic PC usage. For about a year now I've been doing small jobs for him - build a new PC for his office, fix printer, fix wifi, etc. He has made a big mistake few years ago by trusting a guy, let's call him Shitface, with crating him software for work. It's supposed to be pretty simple piece of code in which you can create and modify patient file, create prescription from drugs database and such things. This program is probably one of the worst pierces of code I've ever seen and Shitface should burn for that. Worse, this guy is pretentious asshole lacking even basic IT knowledge. His code is garbage and it's taking him few months to make small changes like text wrapping. But wait, there's more. Everything is hardcoded so every PC using this software must have installed user controls for which he doesn't have license and static IP address on network card.
Part 1
Tom asked me to build him a new PC that will be acting like a server for Shitface's program. He needs it in Kalisz (around 150 km from my place). I Agred (pun intended) and after Tom brought me his old computer I've bought parts and built a new one. I have also copied everything of value and everything took me around three hours.
Part 2
Everything was ready but Shitface's program. I didn't know much about it's configuration so when I've noticed that it's not working even on the old PC I got a bit worried. Nevertheless I started breaking everything I know about it and after next three hours I've got it somewhat working. Seeing that there's still some problems with database connection (from Windows' Event Viewer) I wrote quick SMS to Shitface asking what can be wrong. He replied that he won't be able to help me any way until Monday (day after deadline). I got pissed and very courteously asked him for source code because some of libraries used in this project has license that requires either purchase of commercial license or making code open source. He replied within few minutes that he'll be able to connect remotely within next 10 minutes. He was trying to make it work for the next hour but he succeeded. It was night before deadline so I wrapped everything up and went to bed thinking that it won't take me more than an hour to get this new PC up and running in the office. Boy was I wrong.
Also, curious about his code, I've checked source and he is using beautiful ponglish (mixed Polish and English) with mistakes he couldn't even bother to fix. For people from Poland, here's an example:
TerminarzeController.DeleteTerminarzShematyDlaLekarza
Part 3
So I drove to Kalisz and started working on making everything work. Almost everything was ready so after half an hour I was done. But I wanted to check twice if it's all good because driving so far second time would be a pain. So I started up Shitface's program, logged in, tried to open ANYTHING and... KABUM. UNHANDLED EXCEPTION. WTF. I checked trace and for fuck sake something was missing. Keep in mind that then I didn't know he's using some third party control for Windows Forms that needs to be installed on client PC. After next fifteen minutes of googling I've found a solution. I just had to install this third party software and everything will work. But... It had to be exactly this version and it was old. Very old. So old that producent already removed all traces of its existence from their web page and I couldn't find it anywhere. I tried installing never version and copying files from old PC but it didn't work. After few hours of searching for a solution I called Mr Shitface asking him for this control installation file. He told me that he has it but will be able to send it my way in the evening. Resigned I asked for this new PC to be left turned on and drove home. When he sent me necessary files I remotely installed them and everything started working correctly.
So, to sum it up. Searching for parts and building new PC, installing OS and all necessary software, updating everything and configuring it for Tom taste took me around what, 1/3 of time I spent on installing Mr Shitface's stupid program which Tom is not even happy with. Gotta say it was one of worst experiences I had in recent months. Hope I won't have to see this shit again.
Epilogue
Fortunately everything seems to work correctly. Tom hasn't called me yet with any problems. Mission accomplished. I wanna kill very specific someone. With. A. Spoon.1 -
I.
FUCKING.
*HATE*.
THIS.
KIND.
OF.
PEOPLE!!
I KNOW that you don't understand what you're doing or saying, THAT'S WHY I JUST TOLD YOU A VERY SHORT, SIMPLE, AND CLEAR SENTENCE TO SAY WORD-FOR-WORD TO THE OTHER GUY WHO, IF HE'S AT LEAST HALF-COMPETENT SHOULD IMMEDIATELY UNDERSTAND AND RESPOND WITH *FOUR* *WORD* *ANSWER* and instead of that you blabber on for 5 minutes how you don't know what to say to him and how to explain what we need (FUCKIN ADMIN LOGIN YOU BOTH WINEFLY-BRAINED MORONS!), and he blabbers for 5 minutes back something something bullshit someone else and then REMOTES INTO THE COMPUTER, AND DOES A SYSTEM REINSTALL OR REMOVES DUDE'S USER ACCOUNT OR SOME SHIT LIKE THAT BECAUSE MY SKYPE CALL WITH THE DUDE DROPS AND NEXT TIME DUDE IS CALLING ME HE'S CONFUSED ABOUT SYSTEM SETUP SCREENS!!!!!!
WHAT!!!!
THE!!!!!
SHIIIIIITTT!!!!
told him sorry but call the fucker who fucked it up for you, i'm not wasting two hours of my time just because some school "IT admin" thinks the best solution for user not knowing his admin login is to remotely trigger a reinstall or someshit on the machine.5 -
Stack Overflow is my rubber duck. I can't tell you the number of times I've figured my problem when I'm typing in my question. Something about trying to find the best way to word the problem helps jumpstart my brain and so I can figure out the solution.3
-
Sorry for being late, stuffs came inbetween!
I have done a few privacy rants/posts before but why not another one. @tahnik did one a few days ago so I thought I'd do a new one myself based on his rant.
So, online privacy. Some people say it's entirely dead, that's bullshit. It's up to an individual, though, how far they want to go as for protecting it.
I personally want to retain as much control over my data as possible (this seems to be a weird thing these days for unknown reasons...). That's why I spend quite some time/effort to take precautions, read myself into how to protect my data more and so on.
'Everyone should have the choice of what services they use' - fully agreed, no doubt about that.
I just find one thing problematic. Some services/companies handle data in a way or have certain business models which takes the control which some people want/have over their data away when you communicate with someone using that service.
Some people (like me) don't want anything to do with google but even when I want to email my best fucking friend, I lose the control over that email data since he uses gmail.
So, when someone chooses to use gmail and I *HAVE* to email them, my choice is gone.
TO BE VERY CLEAR: I'm not blaming that on the users, I'm blaming that on the company/service.
Then for example, google analytics. It's a very good/powerful when you're solely looking at its functions.
I just don't want to be part of their data collection as I don't want to get any data into the google engine.
There's a solution for that: installing an addon in order to opt out.
I'm sorry, WHAT?! --> I <-- have to install an addon in order to opt out of something that is happening on my own motherfucking computer?! What the actual fuck, I don't call that a fucking solution. I'll use Privacy Badger + hosts files to block that instead.
Google vs 'privacy' friendly search engines - I don't trust DDG completely because their backend is closed/not available to the public but I'd rather use them then a search engine which is known to be integrated into PRISM/other surveillance engines by default.
I don't mind the existence of certain services, as long as they don't integrated you with data hungry companies/mass surveillance without you even using their services.
Now lets see how fast the comment section explodes!28 -
Fucking stupid arrogant pieces of whale shit in a Node.js group I'm on Facebook, whenever someone posts an issue he/she is having I try to help, I'm far away from a senior but I like to share my knowledge helping others but everytime the post contains a screenshot of windows or the user says it is running on windows all this fucking pendejos blame the OS and instead of replying about what the issue/solution could be they pinches always say:
"oh it's because you are in windows that is shit" -fucking amhed ramadamalamabin
"dude you have to use Linux if you don't want issues Linux is best" -stupid juanito sombrero loco (I'm Mexican don't take it personal)
Can you fucking bitchy please help this poor developers with the actual issue and not fucking say Linux this Linux that when it doesn't fucking even have to do with or is related with the issue? Goddamn
Have a nice day.10 -
Sometimes the best solution is the simplest
But sometimes it takes 20 hours of debugging to figure that out
😧1 -
I just had a rather stressful morning. I should've known something was up by the sounds of thunder as I walked into the office.
I sat down and checked my emails. There was an email from the boss who was away on a business trip. The subject read, "CRITICAL BUG" and my name was mentioned. "Great...No time for coffee", was my first thought.
I began searching commits to see when and how the bug came to be. "SHIT! It was my fault", I said aloud.
(A bit of backstory, I am Irish, working in Germany with a B2 level of the German language.)
I now had to communicate the problem quickly with a senior developer who is Russian. He can't speak English well and I would not expect him to speak it. We are in Germany after all. I tried my best to communicate the issue, but I found it so difficult to understand his German in a Russian accent. Normally, in the office I speak German except when it is urgent and I must explain a problem in greater detail through English. I got past that obstacle, however, the real challenge of fixing the bug awaited.
After 2 hours of coding, I had a solution and committed it to the master branch. All the while, I had been replying to the bosses emails with updates, probably with many grammer mistakes.
We have no dedicated testers here and the code is written in a way which makes it very difficult to test (i.e. it was written many years ago). When I had initially written the code, I tested rigorously and found no issues.
Just needed to rant. I need a coffee break now...4 -
Okay, story time.
Back during 2016, I decided to do a little experiment to test the viability of multithreading in a JavaScript server stack, and I'm not talking about the Node.js way of queuing I/O on background threads, or about WebWorkers that box and convert your arguments to JSON and back during a simple call across two JS contexts.
I'm talking about JavaScript code running concurrently on all cores. I'm talking about replacing the god-awful single-threaded event loop of ECMAScript – the biggest bottleneck in software history – with an honest-to-god, lock-free thread-pool scheduler that executes JS code in parallel, on all cores.
I'm talking about concurrent access to shared mutable state – a big, rightfully-hated mess when done badly – in JavaScript.
This rant is about the many mistakes I made at the time, specifically the biggest – but not the first – of which: publishing some preliminary results very early on.
Every time I showed my work to a JavaScript developer, I'd get negative feedback. Like, unjustified hatred and immediate denial, or outright rejection of the entire concept. Some were even adamantly trying to discourage me from this project.
So I posted a sarcastic question to the Software Engineering Stack Exchange, which was originally worded differently to reflect my frustration, but was later edited by mods to be more serious.
You can see the responses for yourself here: https://goo.gl/poHKpK
Most of the serious answers were along the lines of "multithreading is hard". The top voted response started with this statement: "1) Multithreading is extremely hard, and unfortunately the way you've presented this idea so far implies you're severely underestimating how hard it is."
While I'll admit that my presentation was initially lacking, I later made an entire page to explain the synchronisation mechanism in place, and you can read more about it here, if you're interested:
http://nexusjs.com/architecture/
But what really shocked me was that I had never understood the mindset that all the naysayers adopted until I read that response.
Because the bottom-line of that entire response is an argument: an argument against change.
The average JavaScript developer doesn't want a multithreaded server platform for JavaScript because it means a change of the status quo.
And this is exactly why I started this project. I wanted a highly performant JavaScript platform for servers that's more suitable for real-time applications like transcoding, video streaming, and machine learning.
Nexus does not and will not hold your hand. It will not repeat Node's mistakes and give you nice ways to shoot yourself in the foot later, like `process.on('uncaughtException', ...)` for a catch-all global error handling solution.
No, an uncaught exception will be dealt with like any other self-respecting language: by not ignoring the problem and pretending it doesn't exist. If you write bad code, your program will crash, and you can't rectify a bug in your code by ignoring its presence entirely and using duct tape to scrape something together.
Back on the topic of multithreading, though. Multithreading is known to be hard, that's true. But how do you deal with a difficult solution? You simplify it and break it down, not just disregard it completely; because multithreading has its great advantages, too.
Like, how about we talk performance?
How about distributed algorithms that don't waste 40% of their computing power on agent communication and pointless overhead (like the serialisation/deserialisation of messages across the execution boundary for every single call)?
How about vertical scaling without forking the entire address space (and thus multiplying your application's memory consumption by the number of cores you wish to use)?
How about utilising logical CPUs to the fullest extent, and allowing them to execute JavaScript? Something that isn't even possible with the current model implemented by Node?
Some will say that the performance gains aren't worth the risk. That the possibility of race conditions and deadlocks aren't worth it.
That's the point of cooperative multithreading. It is a way to smartly work around these issues.
If you use promises, they will execute in parallel, to the best of the scheduler's abilities, and if you chain them then they will run consecutively as planned according to their dependency graph.
If your code doesn't access global variables or shared closure variables, or your promises only deal with their provided inputs without side-effects, then no contention will *ever* occur.
If you only read and never modify globals, no contention will ever occur.
Are you seeing the same trend I'm seeing?
Good JavaScript programming practices miraculously coincide with the best practices of thread-safety.
When someone says we shouldn't use multithreading because it's hard, do you know what I like to say to that?
"To multithread, you need a pair."18 -
I am a machine learning engineer and my boss expects me to train an AI model that surpasses the best models out there (without training data of course) because the client wanted ‘a fully automated AI solution’.13
-
Best part of being a Dev us that we are basically wizards.
Now stay with me on this. At our command is the ability to think a solution to a problem and only using our minds and some gestures we can create entire worlds (games) .
We can create software and devices that can literally allow people to walk again.
We can connect people who are not even on the same planet as us (Sace Station) and have full conversations with them.
I don't know, there are limits to what we can do but give us some time and we can keep pushing them further and further.7 -
Recap: https://www.devrant.io/rants/878300
I was out Thursday at the Hospital. I'm what the doctors would call "Ill as fuck"
So, Friday I’m back in the office to the usual: "How was that appointment?"
I know people mean well when they ask this. So, I do the polite thing and tell them it went as well as it could.
Realistically it does't matter how well it went... They haven't cured Crohn's because I showed up to the appointment. They know I'm fucked already.
But, push it down, add it to the future aneurism.
I had to go through the usual resignation meetings with managers:
"We"re fucked now you're going"
"yep"
"we need to get a handle on how fucked"
"already done that for you, here"s a trello board, very fucked."
"we need to put a plan together to drop all the junior devs in the shit with the work you’ve been doing"
"You need about 4 devs, please refer to the previous trello board for your plan"
Meanwhile, me and Morpheus are in constant communication because all of this is like a Shakespearean comedy.
So, I overhear a conversation between a Junior Dev and the Solution Architect.
[SA] took over the project because he knows better than two tried and tested senior devs -_- (fuckwit).
JD: "It took me one and a half days to build it out"
SA: "Yeah, it must have taken me twice as long... It must be a problem with the project, you should just be able to check it out and run it."
JD: "I know, it has to be wrong"
All of this is about Morpheus' work of art, of an Ionic 3 hybrid app.
I fumed quietly at my desk because I've been ordered by the Stazi to be hands off.
Since Morpheus and me were pulled from the project [JD] and [JD2] were dropped into it to get it over the line.
It"s unfortunate and I was clear and honest with my advice to them: I personally would not take over the project because I"d be way out of my depth... Oh, and the App works, so uh, there's no work to do.
They have been constantly at our desks. Asking fuckdiculous questions about how to perform basic tasks. So they can get Morpheus" frigging masterpiece to the user.
It"s like watching that touch up of jesus that got borked by an amateur. Shit I have google, it's like watching this happen: http://ti.me/NnNSAb
[JD] came to me Friday evening.
"I can’t get this to build to iOS or install on [Test Analyst]'s phone."
Me: "No worries brother, where are you stuck right now?"
[JD] describes the first steps with clear indication he hasn't googled his problem.
Life lesson: http://lmgtfy.com/?q=lmgtfy
Que an hour of me showing [JD] how to build an Ion3 project for iOS. Fuck it, your man's in a bind and he"s asked politely for help. I can show him quicker than he can read 3 sets of docos.
I took him through 'ionic cordova build ios', the archive and release processes in XCode 9, then the apk bundling process for droid. Finally we have an MAM so the upload process for that too.
All the while cleaning up his AppIDs, Profiles, deployment attempts.
Damn they were a mess.
I did this with a smile on my face, not because I could say "I told you so"... But. because when any developer asks you how to do something. If you know how to do it, you should always be happy to learn them some new tricks!
Dude's alright, he's been dropped in the shit. Now I know how badly so I'll help him learn things that are useful to his role, but aren't project specific.
As a plausi-senior dev (I'll tell you about that later); it's my job to make sure my team have what they need to go home smiling!
I’m not a hateful fucker, the guy asked me an honest question so I am happy to give him the honest answer.
I took him through it a few times and explained a few best practices. Most were how to do his AppID and ProvProfile set up. Good lad, took it all on board.
However! In his frustration, he pointed the finger at Morpheus' "David" (ref: Michelangelo).
He miraculously morphed into a shiny colourful parrot and fed me SA's line:
"you should just be able to build from a clean clone"
My response was calm and clear:
"You can, it took me 20 minutes on Thursday evening. I was bored and curios, so I wanted to validate Morpheus' work. Here it is on my iOS device and my Android device. It would have taken me 5 if my laptop wasn’t so horrifically out of date."
I validated Morpheus' work so I have evidence, I trust that brilliant bastard.
I just need to be able to prove it's good.
[JD] took this on board.
Maybe listening to two tried and trusted senior devs is better than listening to a headstrong Solution Architect.
When JD left for the weekend I was working a late one (https://www.devrant.io/rants/874765).
His sign off was beautiful.
"I think I can happily admit defeat on this one, it can wait until Monday."
To which I replied: "no worries brother, if you need a hand give me a shout."
Rule 1: Don't be a cunt.
Rule 2: If someone needs help and you can give it: Give it!
Rule 3: Don't interrupt James' cigarette time.
Rule 4: goto Rule 3.rant day 3 jct resigns crohns resignation solution architect wk71 invisible illness fuckwit illness junior developer4 -
Today I was talking to my manager about html and css.
As i was explaining certain things about the structure of the files and the naming conventions for the css classes I mentioned the body of the document.....but got...er...distracted...yes distracted...and said booty instead of body.
She started laughing and I made a tomato look pale because of how red I got. I zipped my hoodie all the way up and talked from the hood hole around my face.
Best solution ever.5 -
[ATTENTION if you're an apple fan this rant could hurt your religion]
- I used a mc for about 12 hours, only to fix the ios version of an app in Xamarin, it was a nightmare:
- I took the only free mac available, it's the latest macbook pro with the "amazing" touch bar, mac os wash freshly reinstalled
- I switch it on, set it up and after few minutes the screen become black, I thought went in standby (the "amazing" touch bar still was working), I try to switch it on but nothing, I asked for help to mac users in office and they choose a genius solution: forced switch off and on
- Finally after took all the adapters I can start to work
- I notice that's not possible to snap 2 or more windows (without 3rd party apps)
- It's not possible to automatically enlarge the Window almost full screen without cover the bottom and top bar, there is only full screen option but it's not the best
- Inverted scroll by default, on mouse doesn't make sense (on trackpad and touch screen yes)
- Multimonitor sucks...and it doesn't recognize 2 monitors connected in chain
- It's not possible disable standby if you're on battery and you close the lid
- Too often I had to see that annoying rainbow progress also for stupid actions
- Like Windows it's not possible to install 2 software at same time
- Like Windows after some updates is required to reboot
- Finally I switched back to my lovely Dell XPS 15 with Windows 10, but I had to go back on the mac for one more fix, so I search again for the adaptor, I reconnect everything and mouse and keyboard doesn't work, after few minutes the mac reboot by himself and appear a crash report dialog...of course I send them a nice feedback
- At the end of the day, as the mac asked more than once, I install the updates... after about an hour, when we try to switch it on again, it doesn't... so once again forced switch off and on
if you want to use it for nice picture on Facebook or Instagram "just woks" ... but for serious work I'm so grateful to choose a Dell XPS 15 with Windows 1010 -
(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 -
This is more of a wishful thinking scenario......but language/tech stack/whatever bashing.
Look, I get it, we like development, we would not be here if we didn't like it. But as my good friend @Stuxnet has mentioned in the past, making this a personality trait is fucking retarded, lame, small, and overall pathetic. I agree with this sentiment 100%
Because of this a lot of people have form some sort of elitist viewpoint concerning the technologies that people use, be it Java, C#, C++, Rust, PHP, JS, whatever, the same circle jerk of bashing on shit just seems completely fucking retarded. I am hoping for a new mentality being that most of us are younger, even if you are a 50+ year old developer, maturity should give you a different perspective, but alas, immaturity and a bitchy attitude carried throughout years of self dick sucking implications would render this null.
I could not give two fucks if the dude next to me is coding his shit in whatever as long as best practices are followed, proper documentation is enforced, results are being brought to our customers(which regardless of how much you try to convince us, none of your customers are fucking elite level) and happiness is ensured, then so fucking be it.
Gripes bitches and complaints are understandable, I dislike a couple of things about my favorite tools, and often wish certain features be involved in my particular tech stacks, does this make stuff bad? no, does it make me or anyone else less of a developer,? no so why give a fuck? bitch when shit bites you in the ass when someone does not know what the fuck they are doing with a language that permits writing bullshit. Which to be honest ALL of them fucking allow. Not one is saved from this. But NOT knowing how to work a solution, or NOT understanding a tech stack does not give you AUTOMATIC FULL insight on how x technology operates, thinking as such is so fucking arrogant and annoying.
But I am getting tired of looking at posts from Timmy, a 18 year old "dev" from whothefuckcares bitch about shit when they have never even made a fucking penny out of their "development" endeavors just because they read some dickhead's opinion on the internet regarding x tech stack and believes that adopting their bullshit troll ass virgin ideas makes them l337.
Get your own fucking opinion on things, be aggressive and stand fucking straight, maybe get some fucking pussy(or dick, whatever) and for fucks's sake learn to interact with other fucking human beings, take a fucking run, play games, break out from your whinny bitch ass shell, talk to that person that intimidates you, take a run, do yoga, martial arts anything that would break you out from being such a small little bitch.
Just fucking do something that keeps you from shitting on people 24/7 365/ a year.
We used to bitch about incompetent managers, shit bosses, fucking ludicrous assignments. Retarded shit that some other dev did, etc, etc. Seems like every other fucking retard getting into this community starts with stupid ass JS/PHP/Python/Java/C#/ whatever jokes and you idiots keep upvoting that shit. Makes those n00bs gain credability. Fuck me shit is so pathetic.
basically, make dev rant great again.
No fuck off and have a beer, or tea or whatever y'all drink.15 -
I just had a brainfuck moment...
Why do I charge my phone via PC USB at work (slowly) when I actually have a power bar on my desk...2 -
*team worried about Slack conversations being tracked in the company*
Solution: Shared text file over network. Edit and save it for private communication. Best idea ever?29 -
Woohoo!!! I made it to 1000++s :) Now I feel less newbie-like around here :)
So... I don't want to shit-post, so in gratitude to all you guys for this awesome community you've built, specially @trogus and @dfox, I'll post here a list of my ideas/projects for the future, so you guys can have something to talk about or at least laugh at.
Here we go!
Current Project: Ensayador.
It's a webapp that intends to ease and help students write essays. I'm making it with history students in mind, but it should also help in other discipline's essay production. It will store the thesis, arguments, keywords and bibliography so students can create a guideline before the moment of writting. It will also let students catalogue their reads with the same fields they'd use for an essay: that is thesis, arguments, keywords and bibliography, for their further use in other essays. The bibliography field will consist on foreign keys to reads catalogued. The idea is to build upon the models natural/logical relations.
Apps: All the apps that will come next could be integrated in just one big app that I would call "ChatPo" ("Po" is a contextual word we use in my country when we end sentences, I think it derived from "Pues"). But I guess it's better to think about them as different apps, just so I don't find myself lost in a neverending side-project.
A subchat(similar to a subreddit)-based chat app:
An app where people can join/create sub-chats where they can talk about things they are interested in. In my country, this is normally done by facebook groups making a whatsapp group and posting the link in the group, but I think that an integrated app would let people find/create/join groups more easily. I'm not sure if this should work with nicknames or real names and phone numbers, but let's save that for the future.
A slack clone:
Yes, you read it right. I want to make a slack clone. You see, in my country, enterprise communications are shitty as hell: everything consists in emails and informal whatsapp groups. Slack solves all these problems, but nobody even knows what it is over here. I think a more localized solution would be perfect to fill this void, and it would be cool to make it myself (with a team of friends of course), and hopefully profit out of it.
A labour chat-app marketplace:
This is a big hybrid I'd like to make based on the premise of contracting services on a reliable manner and paying through the app. "Are you in need of a plumber, but don't know where to find a reliable one? Maybe you want a new look on your wall, but don't want to paint it yourself? Don't worry, we got you covered. In <Insert app name> you can find a professional perfect to suit your needs. Payment? It's just a tap away!". I guess you get the idea. I think wechat made something like this, I wonder how it worked out.
* Why so many chat apps? Well... I want to learn Erlang, it is something close to mythical to me, and it's perfect for the backend of a comms app. So I want to learn it and put it in practice in any of these ideas.*
Videogames:
Flat-land arena: A top down arena game based on the book "flat land". Different symmetrical shapes will fight on a 2d plane of existence, having different rotating and moving speeds, and attack mechanics. For example, the triangle could have a "lance" on the front, making it agressive but leaving the rest defenseless. The field of view will be small, but there'll be a 2d POV all around the screen, which will consist on a line that fills with the colors of surrounding objects, scaling from dark colors to lighter colors to give a sense of distance.
This read could help understand the concept better:
http://eldritchpress.org/eaa/...
A 2D darksouls-like class based adventure: I've thought very little about this, but it's a project I'm considering to build with my brothers. I hope we can make it.
Imposible/distant future projects:
History-reading AI: History is best teached when you start from a linguistic approach. That is, you first teach both the disciplinar vocabulary and the propper keywords, and from that you build on causality's logic. It would be cool to make an AI recognize keywords and disciplinary vocabulary to make sense of historical texts and maybe reformat them into another text/platform/database. (this is very close to the next idea)
Extensive Historical DB: A database containing the most historical phenomena posible, which is crazy, I know. It would be a neverending iterative software in which, through historical documents, it would store historical process, events, dates, figures, etc. All this would then be presented in a webapp in which you could query historical data and it would return it in a wikipedia like manner, but much more concize and prioritized, with links to documents about the data requested. This could be automated to an extent by History-reading AI.
I'm out of characters, but this was fun. Plus, I don't want this to be any more cringy than it already is.12 -
I am a passionate software engineer.
That means that I strive towards excellence, in all aspects of software engineering. It also means that I cannot abide impediments towards those goals.
In practicality, it means that I will try as hard as I can to make the best possible solution for any specific problem. And that if I can make an improvement to the codebase that will make it easier for the next developer to work with it, I will absolutely make it.
I used to believe that my immediate manager had an understanding of my philosophy and why it was important not just to me personally, but to how the company had to move forwards in general also.
I just had a conversation today that completely flipped my perception of him and his role in the company.
I need a new job. Again. Because business people do not understand software, even if their entire business is based on software.11 -
Here's a real tip for people new to the industry.
It's one of those things that's been said over and over again but very few can really seem to employ. I suggest you learn it /well/.
You are not your code. Criticisms of your code, ideas, or your thought processes, is not a criticism of YOU. You absolutely cannot take criticisms of your work personally.
We are engineers. We strive to seek the best solution at all times.
If someone has found a problem with your code or with an idea or whatnot, it is coming from a place of "this is not the best solution", NOT "you're an idiot".
It's coming from a place of "I'm closing this PR because it is not a change I feel suits this project", NOT "I'm closing this PR because it's coming from a woman".
It's coming from a place of "This feature request is ridiculous/this bug is not actually a bug", NOT "you're a fucking idiot, fuck you".
It's coming from a place of "I've already had to address this in a number of issues before and it's eaten up a considerable amount of my time already", NOT "I don't even know you and this I don't have time for a nobody".
You do not get to be bitchy to maintainers because they denied your request. It's not a reflection of you at all. But if you're arguing with someone who has maintained a piece of code for almost a decade, and they're telling you something authoritative, believe them. They're probably smarter than you on this subject. They've probably thought about it more. They've probably seen their code used in many different places. They have more experience than you with that codebase in almost all cases.
Believe me, if we cared about who was behind all of the issues, pull requests, etc. we get, we'd get NOTHING done. Stop taking shit personally. It's a skill, not a defense mechanism. Nobody has the time to sugar coat every little thing.
Let's normalize directness and stop wasting time during technical discussions into opportunities for ego-stroking and circle-jerking and back-patting.8 -
We have a long time developer that was fired last week. The customer decided that they did not want to be part of the new Microsoft Azure pattern. They didn't like being tied to a vendor that they had little control over; they were stuck in Windows monoliths for the last 20 years. They requested that we switch over to some open source tech with scalable patterns.
He got on the phone and told them that they were wrong to do it. "You are buying into a more expensive maintenance pattern!" "Microsoft gives the best pattern for sustaining a product!" "You need to follow their roadmap for long term success!" What a fanboy.
Now all of his work including his legacy stuff is dumped on me. I get to furiously build a solution based on scalable node containers for Kubernetes and some parts live in AWS Lambda. The customer is super happy with it so far and it deepened their resolve to avoid anything in the "Microsoft shop" pattern. But wow I'm drowning in work.24 -
NEW 6 Programming Language 2k16
1. Go
Golang Programming Language from Google
Let's start a list of six best new programming language and with Go or also known by the name of Golang, Go is an open source programming language and developed by three employees of Google and the launch in 2009, very cool just 3 people.
Go originated and developed from the popular programming languages such as C and Java, which offers the advantages of compact notation and aims to keep the code simple and easy to read / understand. Go language designers, Robert Griesemer, Rob Pike and Ken Thompson, revealed that the complexity of C ++ into their main motivation.
This simple programming language that we successfully completed the most tasks simply by librariesstandar luggage. Combining the speed of pemrogramandinamis languages such as Python and to handalan of C / C ++, Go be the best tools for building 'High Volume of distributed systems'.
You need to know also know, as expressed by the CTO Tokopedia namely Mas Leon, Tokopedia will switch to GO-lang as the main foundation of his system. Horrified not?
eh not watch? try deh see in the video below:
[Embedyt] http://youtube.com/watch/...]
2. Swift
Swift Programming Language from Apple
Apple launched a programming language Swift ago at WWDC 2014 as a successor to the Objective-C. Designed to be simple as it is, Swift focus on speed and security.
Furthermore, in December 2015, Swift Apple became open source under the Apache license. Since its launch, Swift won eye and the community is growing well and has become one of the programming languages 'hottest' in the world.
Learning Swift make sure you get a brighter future and provide the ability to develop applications for the iOS ecosystem Apple is so vast.
Also Read: What to do to become a full-stack Developer?
3. Rust
Rust Programming Language from Mozilla
Developed by Mozilla in 2014 and then, and in StackOverflow's 2016 survey to the developer, Rust was selected as the most preferred programming language.
Rust was developed as an alternative to C ++ for Mozilla itself, which is referred to as a programming language that focus on "performance, parallelisation, and memory safety".
Rust was created from scratch and implement a modern programming language design. Its own programming language supported very well by many developers out there and libraries.
4. Julia
Julia Programming Language
Julia programming language designed to help mathematicians and data scientist. Called "a complete high-level and dynamic programming solution for technical computing".
Julia is slowly but surely increasing in terms of users and the average growth doubles every nine months. In the future, she will be seen as one of the "most expensive skill" in the finance industry.
5. Hack
Hack Programming Language from Facebook
Hack is another programming language developed by Facebook in 2014.
Social networking giant Facebook Hack develop and gaungkan as the best of their success. Facebook even migrate the entire system developed with PHP to Hack
Facebook also released an open source version of the programming language as part of HHVM runtime platform.
6. Scala
Scala Programming Language
Scala programming termasukbahasa actually relatively long compared to other languages in our list now. While one view of this programming language is relatively difficult to learn, but from the time you invest to learn Scala will not end up sad and disappointing.
The features are so complex gives you the ability to perform better code structure and oriented performance. Based programming language OOP (Object oriented programming) and functional providing the ability to write code that is capable of evolving. Created with the goal to design a "better Java", Scala became one behasa programming that is so needed in large enterprises.3 -
Be me
>programming since I got up
>don't have much time to program because job sucks up all my time
>dont know the best solution to a problem so decide to take a small break
>open rocket league
>start 1v1 match
>4 minutes later
>dad walks in my room, demanding I go pretend to be a stone age nibba
>pic related
>wants me to dig some dirt for his crops
>wants me to carry multiple buckets of water
>wants me to plow literally fields
>no.jpg
>thisIsRealLifeNotMinecraft.wav
>tells me that I'm addicted
>tells me that he's getting rid of the Internet again
>fuckyou.png
Only my girlfriend and programming bring me joy and you reduce my capacity to interact with both. Fuck you.14 -
The great thing about coding is, every problem can be solved with logic. And the simplest solution is often the best one.
Often when I don't know what to do, I just keep thinking about what I want to have and break down what I need for that and in the end I always come to a good solution. And it gets easier from time to time. -
Best code performance incr. I made?
Many, many years ago our scaling strategy was to throw hardware at performance problems. Hardware consisted of dedicated web server and backing SQL server box, so each site instance had two servers (and data replication processes in place)
Two servers turned into 4, 4 to 8, 8 to around 16 (don't remember exactly what we ended up with). With Window's server and SQL Server licenses getting into the hundreds of thousands of dollars, the 'powers-that-be' were becoming very concerned with our IT budget. With our IT-VP and other web mgrs being hardware-centric, they simply shrugged and told the company that's just the way it is.
Taking it upon myself, started looking into utilizing web services, caching data (Microsoft's Velocity at the time), and a service that returned product data, the bottleneck for most of the performance issues. Description, price, simple stuff. Testing the scaling with our dev environment, single web server and single backing sql server, the service was able to handle 10x the traffic with much better performance.
Since the majority of the IT mgmt were hardware centric, they blew off the results saying my tests were contrived and my solution wouldn't work in 'the real world'. Not 100% wrong, I had no idea what would happen when real traffic would hit the site.
With our other hardware guys concerned the web hardware budget was tearing into everything else, they helped convince the 'powers-that-be' to give my idea a shot.
Fast forward a couple of months (lots of web code changes), early one morning we started slowly turning on the new framework (3 load balanced web service servers, 3 web servers, one sql server). 5 minutes...no issues, 10 minutes...no issues,an hour...everything is looking great. Then (A is a network admin)...
A: "Umm...guys...hardly any of the other web servers are being hit. The new servers are handling almost 100% of the traffic."
VP: "That can't be right. Something must be wrong with the load balancers. Rollback!"
A:"No, everything is fine. Load balancer is working and the performance spikes are coming from the old servers, not the new ones. Wow!, this is awesome!"
<Web manager 'Stacey'>
Stacey: "We probably still need to rollback. We'll need to do a full analysis to why the performance improved and apply it the current hardware setup."
A: "Page load times are now under 100 milliseconds from almost 3 seconds. Lets not rollback and see what happens."
Stacey:"I don't know, customers aren't used to such fast load times. They'll think something is wrong and go to a competitor. Rollback."
VP: "Agreed. We don't why this so fast. We'll need to replicate what is going on to the current architecture. Good try guys."
<later that day>
VP: "We've received hundreds of emails complementing us on the web site performance this morning and upset that the site suddenly slowed down again. CEO got wind of these emails and instructed us to move forward with the new framework."
After full implementation, we were able to scale back to only a few web servers and a single sql server, saving an initial $300,000 and a potential future savings of over $500,000. Budget analysis considering other factors, over the next 7 years, this would save the company over a million dollars.
At the semi-annual company wide meeting, our VP made a speech.
VP: "I'd like to thank everyone for this hard fought journey to get our web site up to industry standards for the benefit of our customers and stakeholders. Most of all, I'd like to thank Stacey for all her effort in designing and implementation of the scaling solution. Great job Stacy!"
<hands her a blank white envelope, hmmm...wonder what was in it?>
A few devs who sat in front of me turn around, network guys to the right, all look at me with puzzled looks with one mouth-ing "WTF?"9 -
oh, it got better!
One year ago I got fed up with my daily chores at work and decided to build a robot that does them, and does them better and with higher accuracy than I could ever do (or either of my teammates). So I did it. And since it was my personal initiative, I wasn't given any spare time to work on it. So that leaves gaps between my BAU tasks and personal time after working hours.
Regardless, I spent countless hours building the thing. It's not very large, ~50k LoC, but for a single person with very little time, it's quite a project to make.
The result is a pure-Java slack-bot and a REST API that's utilized by the bot. The bot knows how to parse natural language, how to reply responses in human-friendly format and how to shout out errors in human-friendly manner. Also supports conversation contexts (e.g. asks for additional details if needed before starting some task), and some other bells and whistles. It's a pretty cool automaton with a human-friendly human-like UI.
A year goes by. Management decides that another team should take this project over. Well okay, they are the client, the code is technically theirs.
The team asks me to do the knowledge transfer. Sounds reasonable. Okay.. I'll do it. It's my baby, you are taking it over - sure, I'll teach you how to have fun with it.
Then they announce they will want to port this codebase to use an excessive, completely rudimentary framework (in this project) and hog of resources - Spring. I was startled... They have a perfectly running lightweight pure-java solution, suitable for lambdas (starts up in 0.3sec), having complete control over all the parts of the machinery. And they want to turn it into a clunky, slow monster, riddled with Reflection, limited by the framework, allowing (and often encouraging) bad coding practices.
When I asked "what problem does this codebase have that Spring is going to solve" they replied me with "none, it's just that we're more used to maintaining Spring projects"
sure... why not... My baby is too pretty and too powerful for you - make it disgusting first thing in the morning! You own it anyway..
Then I am asked to consult them on how is it best to make the port. How to destroy my perfectly isolated handlers and merge them into monstrous @Controller classes with shared contexts and stuff. So you not only want to kill my baby - you want me to advise you on how to do it best.
sure... why not...
I did what I was asked until they ran into classloader conflicts (Spring context has its own classloaders). A few months later the port is not yet complete - the Spring version does not boot up. And they accidentally mention that a demo is coming. They'll be demoing that degenerate abomination to the VP.
The port was far from ready, so they were going to use my original version. And once again they asked me "what do you think we should show in the demo?"
You took my baby. You want to mutilate it. You want me to advise on how to do that best. And now you want me to advise on "which angle would it be best to look at it".
I wasn't invited to the demo, but my colleagues were. After the demo they told me mgmt asked those devs "why are you porting it to Spring?" and they answered with "because Spring will open us lots of possibilities for maintenance and extension of this project"
That hurts.
I can take a lot. But man, that hurts.
I wonder what else have they planned for me...rant slack idiocy project takeover automation hurts bot frameworks poor decision spring mutilation java11 -
I’m tired of all these profane “frontend developers” who do nothing but get cheap internet points by shitting on web technologies.
Bitch, NPM is just a package manager. That’s what it is. Anyone who ever used a package manager already knows how to use NPM.
Here on devrant, there at your workplace, people hear nothing but bitching when you open your mouth. You always need a “solid task description” and “best practices”. You always need somebody else to do your job for you. Frontend is the area where you have to constantly switch between heavy, performance-oriented coding, UX and graphic design while remaining in a dynamic environment that is called “web”, no wonder why you can’t do that. Instead of bitching, you could just present your own solution you designed with just a little bit of product-oriented thinking. But noooo, you fucking bother designers whenever you’re not sure about “how many pixels is that padding”.
You can only be barely productive (and only with a frozen spec) but can never take the lead just once.
In the 80s your kind of approaches were doubted, by the 90s they were dead. In 2020s they’re straight up laughable.
And don’t get me started on CSS. You have to be an absolute buffoon of a developer to not know how to use a DECLARATIVE tool that don’t even require real structural thinking.
No wonder why you praise php. You throw shit all over the place and tell everybody that you’re a “sociopath” and you don’t need that “stupid frontend” and “stupid users”. But you know what? Any real backend or embedded dev would’ve laughed at your face.
Because backend developers are respected.
You’re not.10 -
So I finished my first semester in NYU as a CD master. During the first semester I took a class called heuristic problem solving. Every week a competitive game will be introduced to us, and will be played in two weeks. And trust me, the games aren't easy. I teamed up with another guy who I had no idea was and named our team as we don't know. At the end of the semester we won seven out of nine games, and by won I meant that we beat the whole class in the match. And my teammate became a really good friend.
By telling this story, I want to make a point. I love problem solving, and not problems in a algorithm book where you apply an algorithm and do some trick to solve it, but real world problem where you hope for the best and anticipate, predict your opponent's move. However, American's school system doesn't teach that.
When I applied to graduate school, no school wanted me because I have an average GPA of 3.6, and no outstanding achievements. I can solve problems in my dream becaus I have an active mind, I can propose solution to a project one month before my teammates realized they essentially were doing what I told them the solution should be. But so what, I can't write those on my application.
One of the professor told me that my professor shared the story of my team during a faculty dinner, and they were very impressed by our achievement. So I guess I'm not dumb. But after all, companies and schools will look at your transcript and decide who you are.
I love myself for having random thoughts all the time that can lead to innovative problem solving. But I also hate myself for not able to study like the good kids are.10 -
I feel like Stackoverflow is a fastfood for programmers mind. It gives you a solution you starve for. It may be not the best quality, but it works for now. It does not satisfy you in a long run, and may be too shallow for advancing. But it works and gives you more to think about.
I would never find a quick solution to parse a string with regex. I never thought it works this way. But hey, I'm happy.9 -
I don't get it. Bethesda managed to make the best temporal antialiasing solution to ever grace this planet with TSSAA in Doom 2016 and then manage to fuck it up by removing it in favor of forced TAA in Doom Eternal which looks like complete dogshit
WHYYYYYYYY
The graphics were /literally/ the reason I bought the damn game. I just finished Doom 2016 and it was so inspirational for my own game engine, giving me motivation by seen what I can achieve. Doom Eternal is fucking depressing from a technical standpoint
Well at least I know now that my own AA solution is viable and that I can do better than a AAA studio :emotionless-shrug-guy:8 -
I had a project where I completely suprised the client and the company within the beginning. It was silky smooth, working on multiplatform ios android,standalone. I wrote the most complex shader I ever made. Everything was great and I even got a bonus for the project.
Then one day. Videos started to stutter. Not playing, completely black on some cases and some devices.
I started to think about reasons. I tried every solution I come up with. No success.
Updated all the codecs, middleware still nothing. Tried to solve the problem for a week. It was a total diaaster and I even thought I a dont deserve to be a developer.
We encoded the videos a few times. Decided to export the original video again, boom! It worked. Theres no particular reason why it worked. But it worked. I guess I am a good developer. Not the best but, eh. -
Current list of developer skills:
* Can find 3rd or 4th best solution to most problems
* Easily ready to accept blame for anything to save time since it's likely my fault anyway
* Caffeine addiction only enough to make you worry, not intervene
* Can explain how JavaScript DOESN'T work, thus getting us both closer to understanding how it does
* Only choke on parts of presentations that aren't critically important, like minor details and Q&A
* Good at smack talking other languages I also don't know how to use
* can make a mean gumbo3 -
Godmotherfuckingshitpissballs fuck software development. Seriously wtf.
I learned c# and Unity for 4 fuckin years. Now I want to learn Electron and i just cant get it to fuckin work that motherfucker!
Installed node.js into a folder on my Desktop, git cloned the quick start app, copied the files, npm start and wow it starts.
ONCE.
It does not start anymore wtf? Also the stupid tutorials that I bought dont fuckin explain how to set it up properly wtf...
Doesnt help that im a windows noob and the guy in the tutorial is a macSnob.
Goddamnit I hate this phase of learning stuff. It fuckin sucks.
Also software development is around for like what? 30 years and electron is the best solution for GUI that people came up with? Fuck me.30 -
Best "short-term" solution that is still in production.
By best, I mean the one that you regret seeing but too afraid to touch1 -
1. Learn to read and understand the errors and exception messages. While writing code you're going to be facing exceptions most of the time and the real cause of them is under a lot of generic error messages. That and a lot of patience and perseverance.
2. You're going to face clients and bosses that ask you to do a temporary "workaround" even though you know there is a best way to solve a problem even if it takes more time and effort. Don't "crash" against their ideas, try to find a mid-term between the fast and easy work around and the best solution and leave it open to improve it in the future. I have met a lot of developers that let the frustration stops them to be creative just because the approved development is not what they wanted to do. -
Two big moments today:
1. Holy hell, how did I ever get on without a proper debugger? Was debugging some old code by eye (following along and keeping track mentally, of what the variables should be and what each step did). That didn't work because the code isn't intuitive. Tried the print() method, old reliable as it were. Kinda worked but didn't give me enough fine-grain control.
Bit the bullet and installed Wing IDE for python. And bam, it hit me. How did I ever live without step-through, and breakpoints before now?
2. Remember that non-sieve prime generator I wrote a while back? (well maybe some of you do). The one that generated quasi lucas carmichael (QLC) numbers? Well thats what I managed to debug. I figured out why it wasn't working. Last time I released it, I included two core methods, genprimes() and nextPrime(). The first generates a list of primes accurately, up to some n, and only needs a small handful of QLC numbers filtered out after the fact (because the set of primes generated and the set of QLC numbers overlap. Well I think they call it an embedding, as in QLC is included in the series generated by genprimes, but not the converse, but I digress).
nextPrime() was supposed to take any arbitrary n above zero, and accurately return the nearest prime number above the argument. But for some reason when it started, it would return 2,3,5,6...but genprimes() would work fine for some reason.
So genprimes loops over an index, i, and tests it for primality. It begins by entering the loop, and doing "result = gffi(i)".
This calls into something a function that runs four tests on the argument passed to it. I won't go into detail here about what those are because I don't even remember how I came up with them (I'll make a separate post when the code is fully fixed).
If the number fails any of these tests then gffi would just return the value of i that was passed to it, unaltered. Otherwise, if it did pass all of them, it would return i+1.
And once back in genPrimes() we would check if the variable 'result' was greater than the loop index. And if it was, then it was either prime (comparatively plentiful) or a QLC number (comparatively rare)--these two types and no others.
nextPrime() was only taking n, and didn't have this index to compare to, so the prior steps in genprimes were acting as a filter that nextPrime() didn't have, while internally gffi() was returning not only primes, and QLCs, but also plenty of composite numbers.
Now *why* that last step in genPrimes() was filtering out all the composites, idk.
But now that I understand whats going on I can fix it and hypothetically it should be possible to enter a positive n of any size, and without additional primality checks (such as is done with sieves, where you have to check off multiples of n), get the nearest prime numbers. Of course I'm not familiar enough with prime number generation to know if thats an achievement or worthwhile mentioning, so if anyone *is* familiar, and how something like that holds up compared to other linear generators (O(n)?), I'd be interested to hear about it.
I also am working on filtering out the intersection of the sets (QLC numbers), which I'm pretty sure I figured out how to incorporate into the prime generator itself.
I also think it may be possible to generator primes even faster, using the carmichael numbers or related set--or even derive a function that maps one set of upper-and-lower bounds around a semiprime, and map those same bounds to carmichael numbers that act as the upper and lower bound numbers on the factors of a semiprime.
Meanwhile I'm also looking into testing the prime generator on a larger set of numbers (to make sure it doesn't fail at large values of n) and so I'm looking for more computing power if anyone has it on hand, or is willing to test it at sufficiently large bit lengths (512, 1024, etc).
Lastly, the earlier work I posted (linked below), I realized could be applied with ECM to greatly reduce the smallest factor of a large number.
If ECM, being one of the best methods available, only handles 50-60 digit numbers, & your factors are 70+ digits, then being able to transform your semiprime product into another product tree thats non-semiprime, with factors that ARE in range of ECM, and which *does* contain either of the original factors, means products that *were not* formally factorable by ECM, *could* be now.
That wouldn't have been possible though withput enormous help from many others such as hitko who took the time to explain the solution was a form of modular exponentiation, Fast-Nop who contributed on other threads, Voxera who did as well, and support from Scor in particular, and many others.
Thank you all. And more to come.
Links mentioned (because DR wouldn't accept them as they were):
https://pastebin.com/MWechZj912 -
TL;DR: Stop using React for EVERYTHING. It's not the end-all solution to every application need.
My team is staffed about 50/50 with tenured devs, and junior devs who have never written a full application and don't understand the specific benefits of different libraries/framworks. As a result, most of these junior devs have jumped on the React train, and they're under the impression that React is the end-all answer to any possible application need. Doesn't matter what type of app is, what kind of data is going to be flowing through the app, data scale, etc. In their eyes, React is always the answer. Now, while I'm not a big fan of React myself, I will say that it does its job when its tasked with a data-heavy application that needs to be refreshed/re-rendered dynamically and frequently (like Facebook.) However, my main gripe is that some people insist on using it for EVERYTHING. They refuse to acknowledge that there can be better library/framework choices (Angular, Vue, or even straight jQuery,) and they refuse to learn any other frameworks. You can hit them with countless technical reasons as to why React isn't a good choice for a particular application, and they'll just spout off the same tidbits from the "ReactJS Makes My Nips Hard 101" handbook: "React is the future," "Component-based web architecture is the future," (I'm not arguing with that last one) "But...JSX bro.," "Facebook and Netflix use it, so that's how you know it's amazing." They'll use React for a simple app, and make it overly-complex, and take months to write something that should have taken them a week. For example, we have one dev who has never used any other frameworks/libraries apart from React, and he used React (via create-react-app) to write what is effectively a single form and a content widget inside of a bootstrap template. It took him 4 MONTHS to write this, and it still isn't fully functioning. The search functionality doesn't really work (in fact, it's just array filtering,) and wont return any results if you search for the first word in an entry. His repo is a mess, filled with a bunch of useless files that were bootstrap'd in via create-react-app. We've built apps like this in a week in the past using different libraries/frameworks, and he could have done the same if he didn't overly-complicate the project by insisting on using React. If your app is essentially a dynamic form, you don’t need a freaking virtual DOM.
This happens every time a big new framework hits the scene. New young developers get sucked into it, because it's the cool hip new framework (or in React's case, library.) and they use it for everything, even when it's not the best choice. It happened with Angular, Rails, and now it's happening with React.
React has its benefits, but please please please consider which library/framework is the best choice from a technical standpoint before immediately jumping on the React train because "Facebook uses it bro."2 -
Welcome to Part III of WHY WOULD I WANT TO WORK WITH YOU?, a saga of competence, empathy and me being dick, even tho I didn't want to be one.
This is a follow-up to: https://devrant.com/rants/2363551. It's title is: "Mt 13:12".
We left off the story in the very moment I had received feedback from 3 companies that decided to interview me. A, B and C. We won't talk about A from now on, since I refused their offer to offer me unpaid internship.
It's December 20, 18:00. I am returning home. Earlier that day I emailed guys at C that I need some time with my decision, because I have another offer that suits me better. It was awaiting response from B, obviously. That day they called me and offered me... full-time job. As a fullstack. On a project for a big company, that they described by something like: "They may not be one of the famous X of the market, but they're probably X+1, yeah". Needless to say, that was some bad marketing. I googled them up later tho. Anyway, my response didn't change, altho thing seemed a little big better for me. Except that I was a little suspicious of them too. Were they *that* desperate for a worker?[1]
It is December 24th. 10 am. My phone rings. It's guy from B. He tells me "saito, the recruiter guy is still sick. Since I don't know if we can hire you for sure, it may be better for you to accept another offer, if you got any. I'll keep you updated." That was pretty cool of him. Remember the quote from part II? That's the empathy part. He called me, even tho he didn't really have to. If you read this, monsieur, you're the best. Back to the story now. I emailed guys at C that I am willing to start the job anytime. They told me that CEO is back January 7th, 2020.
It is January 4th 2020, 10 am. Unkonwn number calls. It's actually a guy from B, but the other one. The one that was sick previously. He tells me that he wants to talk about my employment. He talked with the senior dev and he just wants a talk and a small code test in typescript. He told me that it's no prob that I don't know typescript, since it will be entry level and I have time to learn the basics. And so I do. We decide to meet at January 7th. Later on that day guys from C email me that they want to sign the contract n January 7th.
And here we get to the culmination and the lesson of those posts. What should I do? On one side I have a job that isn't 100% comfirmed, but I'm pretty positive about it. The people at B are great, I love them. During my interview I learned some stuff about the project I would participate in, so I didn't go in blindly. It was my field of interest. I was hyped for the possibility itself to work with that senior dev. On the other hand guys at C had their contract ready. They finally were ready to start. I still didn't know for shit what would I do. I knew that I would need to learn basics of data science and stuff. Their interview and CEO left me with a quite bad impression. I didn't really like them. But it was a job.
What I did I consider the best thing I could do for myself. I told guys from C to meet someday later. I visited B yesterday, January 7th. I've done the test. It had some code refactoring and implementing some React elements. Basic shit indeed. I am almost positive I would do it even if I didn't visit typescript docs during the weekend. We then talked about it. The dev told me what he would change in the solution, but didn't consider it bad. Then they told me I'm hired. And I emailed C that I can't accept their offer. The guy was pretty pissed. I can understand it, they seemed to be ready to start with me and I pulled out last day, in the evening. I am truly sorry for that. But also I feel no regrets. I have chosen those whom I trusted more. I've chosen guys who took notes of my CV and talked about it in my interview over people who didn't even get that I applied for a frontend positin. That's competence for you. I've chosen guys who actually wanted to talk wih me about me making music over people who sat me down at a computer and told me: "code". That's empathy for you.
Dear recruiters. If you want to attract best candidates, show your competence and empathy.
Dear recruitees. If you're looking for a good job, it may take some time. Also, knowing people helps a lot.
1 – Actually, I wouldn't be surprised, if they really needed someone to help them out on their projects and they didn't get a lot of attention. Why? Well, their webpage was unfinished and kinda sucked, their interview sucked also. I still don't know whether they're a startup or what. I just can't help but feel bad seeing HR and Marketing that bad. Because the guys actually might do a lot of good stuff, and their potential employees didn't get to know that.5 -
I’ve come to the conclusion that developers who like react have never used it for anything even remotely complicated.
Because here’s reacts dirty little secret; it doesn’t scale. Not even a little. It’s flexible, but that leads to every developer writing their code in a different way.
It’s simple and easy for simple side projects, but as soon as you have to pass state to a child component, you’re fucked. And god help you if you’re modifying the state in said child component. You can try using redux, but that’s a bandaid solution to the real issue.
There are better alternatives, namely Vue. There’s no need to write unintelligible code that’s a mutated hybrid of html css and js. We as web developers realized mixing these technologies was a bad idea a long time ago.
React simply doesn’t scale. It’s flexibility, complexity, and the awful code quality it leads to makes it a nightmare for large projects with multiple developers
Some of its concepts are interesting and useful though. It’s functional concepts allow for easy code reuse, among the other benefits associated with functional programming
I sincerely hope that the hype around react dies out, and a new framework emerges that takes the best from react and fixes the glaring issues it currently has23 -
AI is the future, and it's a future I want to be part of.
This week was very stressful, beside my usual depression and personal issues, I've received a lot of difficult tasks at work, to do in a very short amount of time.
Things I never did, tecnologies I've never used, and for a potential client that is critical for the company at this period in time, and if we won't be able to satisfy their requests we could go bankrupt really soon.
A lot of responsibility, almost no time and a person not competent enough to do it (me), especially on a hurry.
I couldn't sleep in these days, I couldn't think peacefully, concentrate to find the best solutions. I had really bad thoughts.
I couldn't find any useful solution online, on stackoverflow, forums, etc. and I spent hours searching them.
For who knows me here on devRant, probably knows also that I tend to work with old legacy code and dead languages as VB6 and VB.NET.
So integrate "new fancy stuff" isn't that easy and there are no documentation and examples to relay on.
I had fear to even try to understand the documentation (for other languages) and try to write code for it… I was panicking.
With no more ideas, I've decided to try to ask ChatGPT for help.
In maybe 3 or 5 seconds it was able to generate the solution, in VB.NET, with comments and all the explanation needed to understand it and integrate it correctly in my software.
With a few other requests it was able to change it to make it fit better my scenarios.
It's truely unbelivable how the tecnology advanced in the last years, how a computer on the other side is able to reply to my questions with answers that I couldn't find anywhere, because they probably never existed for my case, in VB.NET especially.
ChatGPT made my day, and allowed me to end this stressful moment and give me time to relax and focus on more important personal stuff this weekend.5 -
The company considers the project manager I work with to be the best. After working with him, I consider him to be everything that is wrong with project management.
This PM injects himself into everything and has a way of completely over-complicating the smallest of things. I will give an example:
We needed to receive around 1000 rows of data from our vendor, process each row, and host an endpoint with the data in json. This was a pretty simple task until the PM got involved and over complicated the shit out of it. He asks me what file format I need to receive the data. I say it doesnt really matter, if the vendor has the data in Excel, I can use that. After an hour long conversation about his concerns using Excel he decides CSV is better. I tell him not a problem for me, CSV works just as good. The PM then has multiple conversations with the Vendor about the specific format he wants it in. Everything seems good. The he calls me and asks how am I going to host the JSON endpoints. I tell him because its static data, I was probably going to simply convert each record into its own file and use `nginx`. He is concerned about how I would process each record into its own file. I then suggest I could use a database that stores the data and have an API endpoint that will retrieve and convert into JSON. He is concerned about the complexities of adding a database and unnecessary overhead of re-processing records every time someone hits the endpoint. No decision is made and two hours are wasted. Next day he tells me he figured out a solution, we should process each record into its own JSON file and host with `nginx`. Literally the first thing I said. I tell him great, I will do that.
Fast forward a few days and its time to receive the payload of 1000 records from the Vendor. I receive the file open it up. While they sent it in CSV format the headers and column order are different. I quietly without telling the PM, adjust my code to fit what I received, ran my unit test to make sure it processed correctly, and outputted each record into its own json file. Job is now done and the project manager gets credit for getting everything to work on the first try.
This is absolutely ridiculous, the PM has an absurd 120 hours to this task! Because of all the meetings, constant interruptions, and changing of his mind, I have 35 hours to this task. In reality the actual time I spent writing code was probably 2-3 hours and all the rest was dealing with this PM's meetings and questions and indecisiveness. From a higher level, he appears to be a great PM because of all the hours he logs but in reality he takes the easiest of tasks and turns them into a nightmare. This project could have easily been worked out between me and vendor in a 30 min conversation but this PM makes it his business to insert himself into everything. And then he has the nerve to complain that he is so overwhelmed with all the stuff going on. It drives me crazy because this inefficacy and unwanted help makes everything he touches turn into a logistical nightmare but yet he is viewed as one of the companies top Project Managers.3 -
Mentors, take note. This is a best practice over here.
I've spent two days digging through obscure documentation trying to accomplish one of those tasks that is simple in word and complex in deed. Namely, I wanted to concatenate (not delete) near-duplicate values in Pandas before rendering the data into a graph. Two days beating my head against the wall.
One of my mentors (I'm an intern) heard about the issue, wrote in the proper line (a very specifically and archaically formatted command), and pushed it to repo without even asking for thanks. Works like a charm and he saved my rear end. What a guy.
Please, mentors, don't leave your interns hanging on problems where the only solution is shrouded in dubious documentation and magic syntax. Especially when there's a deadline involved. Let them struggle on logic flow and writing good code.
Be like this guy. You'll build the importance of teamwork and your intern will think you're a wizard.2 -
That moment when you spent over 2 hours recreating and fixing someones bug on stackoverflow and then he just copies your solution and gives himself the best answer.3
-
Hmm. So have you ever argued in a job interview? Like really standing your ground? In a technical interview?
Today I had a live coding session with a company I'm interested in. The developer was giving me tasks to evolve the feature on and on.
Everything was TDD. Splendid!
However at one point I had to test if the outcome of the method call is random. What I did is basically:
```
Provider<String> provider = new SomeProvider("aaa", "bbb", "ccc", "ddd", "eee", "fff")
for(int i=0; i<100; i++) {
String str = provider.get();
map.put(str, incrementCount(str));
}
Set<Integer> occurences = new HashSet(map.values());
occurences.removeIf(o -> o.equals(occurences.get(0)));
assertFalse(occurences.empty());
```
and I called it good enough, since I cannot verify true randomness.
But the dev argued that this is not enough and I must verify whether the output is truly random or not, and the output (considering the provider only has a finite set of values to return) occurences are almost equal (i.e. the deviation from median is the median itself).
I argued this is not possible and it beats the core principle of randomness -- non-determinism. Since if you can reliably test whether the sequence is truly random you must have an algorithm which determines what value can or cannot be next in the sequence. Which means determinism. And that the (P)RNG is then flawed. The best you can do is to test whether randomness is "good enough" for your use case.
We were arguing and he eventually said "alright, let's call it a good enough solution, since we're short on time".
I wonder whether this will have adverse effect my evaluation . So have you ever argued with your interviewer? Did it turn out to the better or to the worse?
But more importantly, was I right? :D21 -
Childish thing really, and slightly related to my current job
Was working on a small pet project (it was a website really) back in college, and collaborating with another friend on it who lived in a different city. Had to show him my progress but he wasn't a programmer, just had to show him how much front end part is done and the functionalities till that time. Of course hosting it online was the best solution, but I was a student and broke.
So I got this python script caller pagekite which would make my laptop into a server for the duration I run the script. It ran but I couldn't manage to show him the site for days since I didn't know where it was connecting to. (No one had any docs on it back then)
Did some tinkering and saw that it connects to localhost, so I fired up my xampp server and it worked as I wanted it to :')
Since that day, I decided that I want to be a developer and learn and implement more of such things.
Moral: the smallest, insignificant things can sometimes give you the most happiness. -
Employer: Hey, we are moving an API update live tomorrow morning that could affect our apps. Can you regression test the apps to make sure they all work?
Me: The API team is pushing code overtop of live endpoints that can break them?
Employer: Yes, we need the updates to work with a new product we are developing.
Me: And nobody thought about versioning these endpoints so we guarantee uptime on all existing services using them now?
Employer: We looked at that but it cost extra and required us to use the cloud solution so we don’t use versioning.
Me: Okkk… I also take it that the API’s don’t have integration tests written?
Employer: What are integration tests? Are unit tests the same thing?
Me: No, so when do I need to regression test all 7 production apps?
Employer: The API’s are moving to production at 4am and we need it signed off by 7am.
Me: I only have 3 hours to regression test 7 production apps at 4am? Each app, if I just skim over them, would take me 2 hours each. I will do my best but that’s a very short time to ensure complete functionality.
Employer: Don’t you have unit tests?1 -
(Dev)Life in the past 12 hours
Oh boy have the last 12 hours been a roller coaster ride for me. Noob me decided to "compile" AoSP for my device to get a taste of how custom ROMs are built from source. Overall it was fun but the errors were a very good excercise for googling, SO. Couple stuff I learnt ( possibly useful for anyone who comes here )
* The shebang line ( #!/usr/bin/env python ) on my system translated to Python 3.7 environment instead of the expected Python 2.7. Best solution I think to avoid confusion is to create a python 2.7 environment and source it.
* Get your trees right. A jar file called WfdCommon.jar ( apparently known as wifi-display common ) was the cause of several hours of hunting the fault. My vendor tree somehow didn't have this file so dex2oat was borking out like mad. I'm still amazed how I figured this one out almost by myself. ( Basically I had to check every file included in the boot class path, and find the odd one )
* I wasted a lot of time in finding the right files to change version numbers and all. Maybe I didn't search XDA properly for a guide ?
Overall it was a fun experience. Also if anyone's experienced in this area could you share resources to learn more about custom ROM development? Specifically on the tweaking part where you mix features from different ROMs to make a great ROM ( like AoSP extended or Pixel Experience ). All I could find were on the zips and not on sources.7 -
Oh gee whiz fellas. I lived through my nightmare. Recently too.
(Multiple rants over last few months are merged in this one. Couldn't rant earlier because my login didn't work.)
I joined a new shithole recently.
It was a huge change because my whole tech stack changed, and on top of that the application domain was new too.
Boss: ho hey newbie, here take this task which is a core service redesign and implementation and finish it in two weeks because it has to be in production for a client.
Normally I'd be able to provide a reasonable analysis and estimate. But being new and unaware of how things work here, I just said 'cool, I'll try my best.' (I was aware that it was a big undertaking but didn't realize the scope and the alarming lack of support I'd get and the bullshit egos I'd have to deal with)
Like a mad man I worked 17+ hours a day with barely a day off every week and changed and produced a lot of code, most of it of decent quality.
Deadline came and went by. Got extended because it was impossible (and fake).
All the time my manager is continuously building pressure on me. When I asked questions I never got any direct/clear answers. On asking for help, I'd get an elaborate word vomit of what was already known/visible. Yet I finally managed to have an implementation ready.
Reviewer: You haven't added parameter comments on your functions and there aren't enough comments in code. We follow standards. Clean code and whatnot. Care for the craft verbal diarrhea.
Boss: Ho hey anux, do you think we'll be able to push the code to production?
Me: Nope. We care for the craft and have standards. We need to add redundant comments to self documented code first, because that is of utmost importance as Nuthead reviewer explained.
(what I wish I had said)
What I actually said: No, code is not reviewed yet.
And despite examples of functions which were not documented (which were written by the reviewer nut), I added 6-7 lines of comments for my single line functions describing how e.g. Sum takes two input integers and returns their sum and asked for a review again.
Reviewer: See this comment is better written as this same-meaning-but-slightly-longer way. Can we please add full stops everywhere even though they were not there to begin with? Can we please not follow this pattern and instead promote our anti-pattern? Thanks.
Me: Changed the comments. Added full stops. Here's a link for why this anti-pattern is bad.
Reviewer: you have written such beautiful code with such little gems. Brilliant. It's great to see how my mentoring has honed your skills.
.
.
.
I swear I would have broken a CRT on his stupid face if we weren't working remotely (and if I had a CRT).
It infuriates me how the solution to every problem with this guy is 'add a comment'.
What enrages me more is that I actually thought I could learn from this guy (in the beginning). My self doubt just made me burnout for little in return.
Thankfully this living nightmare will soon be over.rant fuck you shitty reviewer micromanagement by micrococks wk279 living nightmare fml glassdoor reviews don't lie9 -
Right, that's fucking it. Enough. I'm all for learning new technologies, frameworks, and development protocols, but my time on this earth is limited and at the end of the day if I'm having to spend DAYS AND FUCKING DAYS just scouring through obscure forum posts because the documentation is shit and just hitting ONE FUCKING PROBLEM AFTER ANOTHER then there comes a point at which the time investment simply isn't worth it. I HATE throwing in the towel because some FUCKING CUNT code problem has got the better of me, but fucking sense must prevail here.
Laravel fucking Mix. Do any any of you use this shit on Windows? Because I take my fucking hat off to you. I'm done with it.
Oh, so your server uses 'public_html' instead of 'public' does it? Well, of course you can just set
mix.setPublicPath('public_html'); then can't you?
No, you can't. Why? Because fuck you, that's why. Not only do you have to hard-code your fucking public directory into each specified path, additionally you have to set
mix.setPublicPath('./');
Why? Because fuck you, that's why. It took me the best part of two days to discover that little nugget of information, buried at the bottom of some obscure corner of the internet in a random github issue thread. Fuck off.
Onto next problem. Another 5 hours invested to extract some patchy solution that I'm not at all happy with.
Rinse, repeat.
Make it work with BrowserSync by wrapping your assets like so:
<link rel="stylesheet" href="{{ mix('/build/css/main.css') }}">
Oh oh oh but "The Mix manifest does not exist"... despite a fresh install of Laravel 5.6 and all relevant node modules installed... follow some other random Github thread with a back and forth of time-consuming suggestions for avenues of experimentation, with no clear solution.
Er no, fuck off. I'm going back to Grunt and maybe I'll try Webpack/Mix in another year or two when there's actually some clear answers, but as it stands this a wild goose chase into a fucking black-hole and I've got better things to do with my precious time. Go die.5 -
So technical interview today but woke up (6am) and started thinking about it and it led to this rant about algorithms. This is probably going into a Medium post if I ever get around to finishing it but sort of just wanted to share the rant that literally just went off in my mind.
*The problem with Algorithms Technical Interviews Is They don't test Real skills*
Real world problems are complex and often cross domain combining experience in multiple areas. Often the best way is not obvious unless you're a polymath and familiar with different areas, paradigms, designs. And intuitively can understand, reason, and combine them.
I don't think this is something a specific algorithm problem is designed to show. And the problem is the optimal solution to some of these and to algorithm design itself is that unless you train for it or are an algorithm designer (practice and experience), you can only brute force it in the amount of time given.
And quite frankly the algorithms I think we rely on daily weren't thought of in 30 minutes. The designers did this stuff for a living, thought about these problems for days and several iterations… at least. A lot were mathematicians. The matrix algorithm that had a Big O of 7N required a flash of insight that only someone constantly looking and thinking about the equations could see.
TBA
-system design
-clean readable coding practices
...
TLDR: I could probably go on and on about this stuff for hours jumping from item/example/area to the next and back again... But I don't think you can test these (~20) years of experience in a 1 hr technical interview focused on algorithms...8 -
Most successful? Well, this one kinda is...
So I just started working at the company and my manager has a project for me. There are almost no requirements except:
- I want a wireless device that I can put in a box
- I want to be able to know where that device is with enough accuracy to be able to determine in which box the device was put in if multiple boxes were standing together
So, I had to make a real time localization system. RTLS.
A solo project.
Ok, first a lot of experiments. What will the localization technique be? Which radio are we going to use?
How will the communication be structured?
After about two months I had tested a lot, but hadn't found THE solution. So I convinced my manager to try out UWB radio with Time Difference Of Arrival as localization technique. This couldn't be thrown together quickly because it needed more setup.
Two months later I had a working proof of concept. It had a lot of problems because we needed to distribute a clock signal because the radio listeners needed to be sub-nanosecond synchronous to achieve the accuracy my manager wanted. That clock signal wasn't great we later found out.
The results were good enough to continue to work on a prototype.
This time all wired communication would be over ethernet and we'd use PTP to synchronize the time.
Lockdown started.
There was a lot of trouble with getting the radio chip to work on the prototype, ethernet was tricky and the PTP turned out to be not accurate enough. A lot of dev work went into getting everything right.
A year and 5 hardware revisions later I had something that worked pretty well!
All time synchronization was done hybridly on the anchors and server where the best path to the time master was dynamically found.
Everything was synchronized to the subnanosecond. In my bedroom where I had my test setup I achieved an accuracy of about 30cm in 3d. This was awesome!
It was time to order the actual prototype and start testing it for real in one of the factory halls.
The order was made for 40 anchors and an appointment was made for the installation in the hall.
Suddenly my manager is fired.
Oh...
Ehh... That sucks. Well, let's just continue.
The hardware arrives and I prepare everything. Everything is ready and I'm pretty nervous. I've put all my expertise in this project. This is gonna make my career at this company.
Two weeks before the installation was to take place, not even a month after my manager was fired, I hear that my project was shelved.
...
...
Fuck
"We're not prioritizing this project right now" they said.
...
It would've been so great! And they took it away.
Including my salary and hardware dev cost, this project so far has cost them over €120k and they just shelved it.
I was put on other projects and they did try to find me something that suited me.
But I felt so betrayed and the projects we're not to my liking, so after another 2-3 months I quit and went to my current job.
It would've so nice and they ruined it.
Everything was made with Rust. Tags, anchors, RTLS server, web server & web frontend.
So yeah, sorry for the rambling.5 -
What fascinates me the most about the industry we work in, is the disruptive and transformative nature of ideas the come out every day.
The technology we use augmented with the software we build have the capability to disrupt and shift the existing paradigm of absolutely any industry today. The solution we construct changes the way in which an industry functions, and brings the horizon closer while making the ocean wider.
So does our capability to design and transform the existing landscape with the ability to visualise the many dimensions of a problem that are otherwise overlooked by others.
I had one of the best feelings today when 3 extremely prolific doctors in the Indian opthalmological industry told me how the solution i built could change the way in which they have been working for almost 20 years ... For the best ...
It's just such a great feeling to know every line of code we write , execute and debug would one day disrupt and transform an otherwise traditional landscape.
So hooray to us and the things we invent, because at the end of the day a PC to code and internet for the outreach ( and stackoverflow ofcourse. 😅 ) Is all that's needed to bring about a metamorphosis of conventional thoughts and theories.1 -
I didn’t turn down a dev freelance project when the client decided against going with best practices because the solution I offered was a well-established design pattern but created a need for a financial management change she didn’t like. I stupidly built what she asked for. It worked fine in the 3rd party vendor test environment but failed on production. After hours of analysis of code to ensure no changes happened to my source during test->prod deployment, and the vendor denying they had config differences between them, and the client refusing to pay, all I could do was abandon the project.2
-
Product and Design have a common enemy. Yes, you guessed it right, Engineering.
The former aim to solve user problems and focus heavily on aesthetics most of the time. While the latter actually does it.
As a Product guy, I admit that I absolutely hate the role these days because all that are asked to focus on is engagement retention conversion and other fancy metrics. Community has missed the entire point of why the fucking role exist.
On the other hand, engineering always asks the best questions. Focuses on performance and scale while periodically checking on tech debt. Yes, they suck at business or sales but when the solution works, things automatically make money.
I DON'T FUCKING CARE HOW BEAUTIFUL YOUR APP IS, IF IT DOESN'T SOLVE MY PROBLEM THEN IT'S RUBBISH.
Functionality and UX matters to more than colour scheme or fonts. Reason why Amazon is a huge. They are functionally solving a great problem while constantly improvising UX and not giving a rat's ass on UI.
Another down side to your fancy design is that the UI elements make things heavier. No wonder engineers have always been the best problem solver.
We lost our way. Tech world needs to go back a decade or two to fix the tech debt.8 -
My best skill is problem is:
*** problem solving ***
Really, at least in all the teams I've been working until now, I'm always surprised by myself. How fast I am in spotting the problem root and find or suggest a solution. Even on things I have almost no knowledge.
My worst skill is:
*** problem solving ***
Being so effective make me everybody's slave.
Everybody always rely on me for any kind of weird shit. If I try to "outsource" the problem, after one day it will bounce back on me and I solve it in no time.
So I've no time for anything else that solving other people's problems.
Constant interruptions and context switching.
And worst, my bosses don't understand why I don't finish my tasks. And I cannot blame my team.8 -
@Owenvii made a post over at (https://devrant.com/rants/2359774/...) and I want to write a proper response.
The biggest thing you have to look out for as a new dev is the jobs which you accept to begin with.
This isn't minimum wage no more, this is "big league", well, maybe not apple or google big league, but it's not $9.25 an hour either.
Basically you don't want to work anywhere where 1. your labor will be treated as a highly disposable commodity. 2. where the hiring manager doesn't know how to do the job themselves.
The best thing you can do is, if you're new, and just breaking through (and even if you're not), is ask them common questions and problems/solutions that crop up doing the work. If they can answer intelligently that tells you the company values competence (maybe), enough to put someone in place who will know ability from bullshit, merit from mediocrity, and who understands the process of progressing from junior dev to a more involved role.
It also means they are incentivized to hire people who know what they're doing because the training cost of new hires is lowered when they hire people who are actually competent or capable of learning.
Remember, an interview isn't just them learning about you, it's your opportunity to interview *them* and boy, you'll be making a BIG mistake if you don't.
Ideally you want them to ask you to pair program a problem. If your solution is better than theirs then they aren't sending their best to do interviews, and it tells you the company doesn't fire incompetents. The interviewers response can tell you a lot too, if they critique your work, or suggest improvements, and especially if they explain their thinking, that is an amazing response to look for, it says the company values mentorship and *actual* teamwork (not the corporate lingo-bingo 'teamwork' that we sometimes see idolized on posters like so much common dogma).
Most importantly, get them to talk about their work and their team. If they're a professional, it'll be really difficult to pry anything negative about their co-workers out of them, but if they're loose-lipped and gossipy thats a VERY bad sign, regardless of what they have to say.
Ask to take a tour and do a meet n' greet of who you will be working with. If they say no, then it's no thank you to a job offer. You want to take every opportunity to get to know everyone there, everyone you'll be working with, as much as possible--because you'll be spending a LOT of time with these people and you want to rule out any place that employs 'unfireable' toxic assholes, sociopath executives, manipulative ladder climbing narcissists, and vicious misery-loving psychopathic coworkers as quick as possible. This isn't just one warning flag to look out for, it's the essential one. You're looking for the proper *workplace culture*, not the cheesy startup phrase of "workplace culture", but the actual attitudes of the team and the interpersonal dynamics.
Life is really short, and a heart attack at 25 from dipshit coworkers and workplace grief can and will destroy your health, if not your sanity, the older you get.
Trust and believe me when I say no paycheck is too grand to deal with some useless, smarmy, manipulative, or borderline motherfuckers at work constantly. You'll regret it if you do. Don't do it. Do you fucking do it. Just don't.
Take my words to heart and be weary of easy job offers. I'm not saying don't take a good offer that lands in your lap, I AM saying do some investigating and due diligence or the consequences are on you.1 -
We are 2 people working as remote android devs for this startup in another country. 6 weeks ago a new person joined onsite to work directly in startup HQ. I'l refer to him as an newguy.
Last week we started new sprint (of 2 weeks) to work on a new feature.
Newguy was responsible for gathering all the specs and planning, so this is how our sprint is going so far:
Day 1:
We have 10+ tickets in jira (tickets have only titles) no one knows what to do and we don't even have specification. I started pushing everybody onsite to get their shit together. We NEED UX/UI specs, we NEED backend to be ready, or at least start working paralelly so that once wer'e done with frontend backend would be ready. I mean cmon guys this feature is already 70% done on iOS, why cant you send us the specification?
Day 2:
We had a meeting on Zoom and talked about missing specification and project manager promised to send us the specs. Meanwhile the idea of feature became clearer so I agreed with the newguy to start researching about best way to implement our solution.
Day 3:
We received the specifications. I provided my research for the feature to the newguy. Turns out the he knew about specification 4-5 days before.
Instead of sharing information with us, he decided to create his own library to do what we want to do and blatantly rejected my research input.
Now he showed his implementaton (which is shit by the way) and presents it as the only way to proceed forward. He offers for us to work paralelly with him on this (basically he wants to write library alone, and we are supposed to somehow implement and test it, but how the fuck we can implement if backend is not ready and library is just a bunch of empty interfaces at this point?)
I talked with one of the teamleads in the startup and told him that this is not the way things were being done here before and new guy is becoming a dictator.
Teamlead talked with new guy and found no issue. Basically newguy defended his sole decision by saying that he did research on his own, there are no libraries that do what we want and he knows better.
Teamlead tells me to STFU because new guy seems competent and he will be leading this feature. Basically from what I gathered teamlead doesn't give a single fuck and wants to delegate all project management to this new guy.
Day 5:
End of the week. New guy claims that his lib is done so we can start implementing properly. I tried implementing his lib but its fucked up and backend is still not ready.
Day 6:
Backend is still not ready, no one is doing anything just waiting for it to be ready.
Day 7 (Today):
Today(Backend is still not ready, no one is doing anything just waiting for it to be ready.
So what can I say? His plan was to probably prove his self worth and try to lead this feature by giving us information at last minute. At the point were we should start implementing instead of researching.
What happened? Motherfucker doesn't know shit about backend, has been notified about backend issues multiple times but his head was so deep up his ass with that new library of his that he delayed the rest of the team.
Result? 7 working days wasted. Out of 3 developers only 1 was actually working (and his fucked up code will have to be rewritten anyways). Only 50% of feature done. Motherfucker tells me that this is how we will work in the future, "paralelly". The fuck is this mate? If you would have worked on this feature alone you would have done it already now, but instead you wait until we remote devs will login and fetch you the test input and talk with backend guys for you? The fuck is wrong with you.
You fucking piece of shit, learn to plan and organize better if you want to lead the team. Now all that you are doing is wasting time, money and getting on everyboys nerves. Im tired of fucking spoon feeding you every day you needy scheming office politics playing piece of shit. Go back to your shithole country and let us work.
When I was responsible for sprint planning I figured out what to do before start of the sprint and remote devs were able to do week's work in 1-2 days and have rest of the week off. This is how it's supposed to be when you work with a remote team. Delegate them separate features, give them proper specs ahead and everyone's happy. Don't start working on frontend if you dont even fucking know when backend will be ready. It's fucking common sense.
Now I need to spoon feed this motherfucker who can't even get information while sitting on his ass onsite in HQ. Fucking hell.8 -
When I started working as designer my boss at that time liked to invite people to remote control me, sit or stand behind my neck to explain their will and tell me to do this, "can we try this?", "can it be changed to another color?", "is it possible to move logo to the left?" and all that m*f*cking shit.
It didn't take long before I decided that I wouldnt accept that anymore.
They come with that energy, that illusion of power to play god with your fast mouse...
The first solution was to stand up with them around the chair and tell them I would take notes, then do the changes and mail them. That worked but sometimes it didn't feel right for the boss who got mad and tried to handle the mouse like trying to pretend she was going to do it...
In case the visit was by surprise I used this method, not sitting in worst position. Just recover dignity standing to their commaning stance.
The best and what became the real solution was printing things we needed, receive and guide clients to a meeting room where we would discuss things and take notes on the papers.2 -
I have been commenting a lot recently on linux ranters who rant about windows for stupid reasons.
To all these people who think linux is better and they are smart(er) than windows users, i say:
We use windows in the company I work for. And if you are a linux user, you're just not welcome and your skills are just a waste for the company. And yes it is a successful company with 100s of millions of euros as net revenue.
Our users have windows machines and we offer topnotch Microsoft solutions for them.
When you ask me to switch to linux because of a problem i had in a Windows machine, it makes me feel that you are a stupid person who knows about linux and gives solutions based on his stupidity and on zero knowledge of the scenario.
Please be professional and think about the solution you are offering. It would be best if you did not offer any solution at all in fact.13 -
Microsoft: let's develop a solution that helps *nix users use the best of two worlds! Let's create WSL! And then WSL2!
Also Microsoft: oh, let's randomly pick an IP for the WSL host so that it can mess with VPNs!
https://github.com/microsoft/WSL/...16 -
I hate when some programmers say that goto should NEVER be used. It's clear that in common cases is not needed but there are situations where goto is the best solution10
-
!dev
i am so lucky to have a good memory. i am not the best problem solver, but i remember lots of previous solution. being a dev has really help my thought processes though.
tldr; i told my gf i'd get an ass tattoo of her choice if i got a 1500+ on the sat and now i'm nervous because after looking online i can't find a single math question i got wrong.11 -
My wifi card has been in the bugs section of almost every major Linux distro for the past 4 years since an update. Tried almost every solution i could find. nothing helped. couldn't use it with it's unstable speed and disconnections. So much for open source and GNU/shit and fix it yourself crap. Do you really expect me to learn to write a wifi driver? I'm done with Linux. Installed Windows and everything was fine. open source software may be good but not the best. Much better to use proprietary software than to waste time trying solutions from the seventh page of google search results.12
-
This is the best example of google giving a fuck about their own guidelines.
They always ram their expectations of you making your apps fit the guidelines a 100% into you, but then they give a fuck about heir guidelines in their own software.
They use a ListView here in google contacts. It's completely outdated for a large amount of data, such as my 200 contacts. They literally push you not to use outdated techniques such as ListViews in your app. Use RecyclerViews, our completely new solution instead. ListViews are very very bad in performance.
I KNOW THIS SOUNDS PICKY, BUT THIS IS JUST AN EXAMPLE!!! THEY DON'T CARE ABOUT THEIR OWN GUIDELINES IN EVRY WAY! BEST OTHER EXAMPLE IS GOOGLE PLAY STORE. BAD PERFORMANCE 100%. BUT AT LEAST IT HAS RUCKLING ANIMATIONS.4 -
MENTORS - MY STORY (Part III)
The next mentor is my former boss in the previous company I worked.
3.- Manager DJ.
Soon after I joined the company, Manager E.A. left and it was crushing. The next in line joined as a temporal replacement; he was no good.
Like a year later, they hired Manager DJ, a bit older than EA, huge experience with international companies and a a very smart person.
His most valuable characteristic? His ability to listen. He would let you speak and explain everything and he would be there, listening and learning from you.
That humility was impressive for me, because this guy had a lot of experience, yes, but he understood that he was the new guy and he needed to learn what was the current scenario before he could twist anything. Impressive.
We bonded because I was technical lead of one of the dev teams, and he trusted me which I value a lot. He'd ask me my opinion from time to time regarding important decisions. Even if he wouldn't take my advice, he valued the opinion of the developers and that made me trust him a lot.
From him I learned that, no matter how much experience you have in one field, you can always learn from others and if you're new, the best you can do is sit silently and listen, waiting for your moment to step up when necessary, and that could take weeks or months.
The other thing I learned from him was courage.
See, we were a company A formed of the join of three other companies (a, b, c) and we were part of a major group of companies (P)
(a, b and c) used the enterprise system we developed, but internally the system was a bit chaotic, lots of bad practices and very unstable. But it was like that because those were the rules set by company P.
DJ talked to me
- DJ: Hey, what do you think we should do to fix all the problems we have?
- Me: Well, if it were up to me, we'd apply a complete refactoring of the system. Re-engineering the core and reconstruct all modules using a modular structure. It's A LOT of work, A LOT, but it'd be the way.
- DJ: ...
- DJ: What about the guidelines of P?
- Me: Those guidelines are obsolete, and we'd probably go against them. I know it's crazy but you asked me.
Some time later, we talked about it again, and again, and again until one day.
- DJ: Let's do it. Take these 4 developers with you, I rented other office away from here so nobody will bother you with anything else, this will be a semi-secret project. Present me a methodology plan, and a rough estimation. Let's work with weekly advances, and if in three months we have something good, we continue that road, tear everything apart and implement the solution you guys develop.
- Me: Really? That's impressive! What about P?
- DJ: I'll handle them.
The guy would battle to defend us and our work. And we were extremely motivated. We did revolutionize the development processes we had. We reconstructed the entire system and the results were excellent.
I left the company when we were in the last quarter of the development but I'm proud because they're still using our solution and even P took our approach.
Having the courage of going against everyone in order to do the right thing and to do things right was an impressive demonstration of self confidence, intelligence and balls.
DJ and I talk every now and then. I appreciate him a lot.
Thank you DJ for your lessons and your trust.
Part I:
https://devrant.com/rants/1483428/...
Part II:
https://devrant.com/rants/1483875/...1 -
## Building my own router
Damn it! I've got to read more before making decisions :) I already do that, but I need yet *MORE* reading.
So I bought a miniPC which I'm planning to turn into a router. I wanted to install AX200 (wifi6) card in it but it could only see the bluetooth part of it (using btusb kernel module).
What I did NOT know about wifi cards and mPCIe slots
M2 is only a form-factor. It defines what the connector looks like. Over that connector multiple different protocols could be used. m2 (NGFF) WIFI cards are usually using PCIe proto. And USB.
https://delock.com/infothek/M.2/...
My so-desired AX200 uses both PCIe and USB protocols: USB for BT and PCIe for the actual wifi.
https://ark.intel.com/content/www/.... The same spec applies to both: m2 and mPCIe card versions.
Now my mini PC has a mPCIe slot but the label on the board says "USB wifi". Which suggests that it only accepts the USB-related pins of mPCIe (as wiki says about mPCIe: "The host device supports both PCI Express and USB 2.0 connectivity, and each card may use either standard.").
So I guess that means I'm stuck with a useless mPCIe port :D shit..
Now my best bet is to wait for USB dongles supporting wifi6 and use usb AC adapters until then. Well... It's not an optimal outcome. But still IMO a better solution than an embedded router from the shelf!
(No, I'm not giving up and buying another used/new PC :) )
At last I can calm down and stop searching for magical pcie-to-usb adapters :) Phew... That's a relief!1 -
Most recently... taking something previous devs had failed at and knocking it out of the park.
Best example was a statistical regression and graphing tool on ASP MVC.
The devs were doing a massive brute force recalculation on the server layer. It would take 24h then fail to save (Entity framework brute force).
We moved it to the database layer and got it down to a passable time.
The same devs were outputting charts to ie 9, chrome, firefox... same deal, half an hour on the initial request (parser churn in the browser)... then failure.
Again got it into a passable time by switching to web sockets and long polling then outputting 1000 or so points at a time to give the browser time to render.
Taking those two cock ups and making them a workable solution was awesome.
Since then, teaching. We have apprentices, newcomers, interns all jumping in and looking to get working. They're all different, what works to teach one person won't the next, each of them so far has caught on to what I was teaching. It's a proud moment to be able to impart knowledge and see someone pick it up, enthusiastically... it's also awesome to see someone excited about what you do. -
It's been a while DevRant!
Straight back into it with a rant that no doubt many of us have experienced.
I've been in my current job for a year and a half & accepted the role on lower pay than I normally would as it's in my home town, and jobs in development are scarce.
My background is in Full Stack Development & have a wealth of AWS experience, secure SaaS stacks etc.
My current role is a PHP Systems Developer, a step down from a senior role I was in, but a much bigger company, closer to home, with seemingly a lot more career progression.
My job role/descriptions states the following as desired:
PHP, T-SQL, MySQL, HTML, CSS, JavaScript, Jquery, XML
I am also well versed in various JS frameworks, PHP Frameworks, JAVA, C# as well as other things such as:
Xamarin, Unity3D, Vue, React, Ionic, S3, Cognito, ECS, EBS, EC2, RDS, DynamoDB etc etc.
A couple of months in, I took on all of the external web sites/apps, which historically sit with our Marketing department.
This was all over the place, and I brought it into some sort of control. The previous marketing developer hadn't left and AWS access key, so our GitLabs instance was buggered... that's one example of many many many that I had to work out and piece together, above and beyond my job role.
Done with a smile.
Did a handover to the new Marketing Dev, who still avoid certain work, meaning it gets put onto me. I have had a many a conversation with my line manager about how this is above and beyond what I was hired for and he agrees.
For the last 9 months, I have been working on a JAVA application with ML on the back end, completely separate from what the colleagues in my team do daily (tickets, reports, BI, MI etc.) and in a multi-threaded languages doing much more complicated work.
This is a prototype, been in development for 2 years before I go my hands on it. I needed to redo the entire UI, as well as add in soo many new features it was untrue (in 2 years there was no proper requirements gathering).
I was tasked initially with optimising the original code which utilised a single model & controller :o then after the first discussion with the product owner, it was clear they wanted a lot more features adding in, and that no requirement gathering had every been done effectively.
Throughout the last 9 month, arbitrary deadlines have been set, and I have pulled out all the stops, often doing work in my own time without compensation to meet deadlines set by our director (who is under the C-Suite, CEO, CTO etc.)
During this time, it became apparent that they want to take this product to market, and make it as a SaaS solution, so, given my experience, I was excited for this, and have developed quite a robust but high level view of the infrastructure we need, the Lambda / serverless functions/services we would want to set up, how we would use an API gateway and Cognito with custom claims etc etc etc.
Tomorrow, I go to London to speak with a major cloud company (one of the big ones) to discuss potential approaches & ways to stream the data we require etc.
I love this type of work, however, it is 100% so far above my current job role, and the current level (junior/mid level PHP dev at best) of pay we are given is no where near suitable for what I am doing, and have been doing for all this time, proven, consistent work.
Every conversation I have had with my line manager he tells me how I'm his best employee and how he doesn't want to lose me, and how I am worth the pay rise, (carrot dangling maybe?).
Generally I do believe him, as I too have lived in the culture of this company and there is ALOT of technical debt. Especially so with our Director who has no technical background at all.
Appraisal/review time comes around, I put in a request for a pay rise, along with market rates, lots of details, rates sources from multiple places.
As well that, I also had a job offer, and I rejected it despite it being on a lot more money for the same role as my job description (I rejected due to certain things that didn't sit well with me during the interview).
I used this in my review, and stated I had already rejected it as this is where I want to be, but wanted to use this offer as part of my research for market rates for the role I am employed to do, not the one I am doing.
My pay rise, which was only a small one really (5k, we bring in millions) to bring me in line with what is more suitable for my skills in the job I was employed to do alone.
This was rejected due to a period of sickness, despite, having made up ALL that time without compensation as mentioned.
I'm now unsure what to do, as this was rejected by my director, after my line manager agreed it, before it got to the COO etc.
Even though he sits behind me, sees all the work I put in, creates the arbitrary deadlines that I do work without compensation for, because I was sick, I'm not allowed a pay rise (doctors notes etc supplied).
What would you do in this situation?4 -
Hey everyone!
TL;DR I'm looking for a way to make a webapp for iOS.
I am developing an app for iOS devices. I am more familiar with JS, CSS and HTML, not to mention I have already created a fair chunk of the app. So it would be great if there was a solution that worked like UIWebView/WKWebView. I've had numerous issues with both of these widgets. UIWebView worked the best, most like a normal browser renderer, however still has some very annoying anomalies. For instance the input box could be covered up such so that you could still type but not see what you were typing, no other web browser does this. I've had plenty of issues that I have had to find hacky workarounds for. Is there a better way? I've heard of Titanium by Appcelerator, however I wanted to get as many opinions as a can.
Thanks!14 -
What the best database solution for web and smartphones dev?
Is mysql the good choice?
I’m an “old” dev with old usage, php-mysql-JavaScript.
Is it a 2018 solution or am i a dinosaur?
All data will be stored on server side. Web and smartphone app as client.
Thanks for your experience sharing.6 -
Just because you have no idea what you are doing does not make you an artist.
So can we please treat software development as engineering?
I get that in software there are a lot of unknowns and you won't always find best practices, especially if you want to be a pioneer on the bleeding edge.
Yet maybe that issue you were trying to solve with your hackish -- I mean artfully -- solution is a lack of understanding of the basic technology?
If you want to do art, try poetry.3 -
Entering Week4 post-layoff. Week2 of pretty much nothing but playing with my kids, doing house chores, exercising and job searching.
I spent like 3 hours in the gym last Friday. Instructor there turned to me and said "tough divorce?". To what I answered "very happily married, got laid off from work". He said that it would be his second guess.
Even before this whole crap I had enough cash flow-yielding investments to just about make rent. My wife makes enough to make sure we will want for nothing, our old folks have our kids' tuition fees covered, and we have some savings anyway.
But the anxiety-laden period between "send a dozen messages and resumė's" and having the same "greetings, fellow millenial!" meetings with different sets of tech-illiterate boomers and toddlers is becoming a boring nuisance, one that "having a side project to keep my mind warm" could solve.
Maybe I will fix the Stardew Valley Mods API for Android. I haven't done the C#/.NET thing since uni, and my frontend Java game is weak (at best) but how much could have it changed this last decade or so? /s
Maybe I will write a MongoDB Runner for Apache Beam. But I'm afraid that won't yeld enough street cred to be worth it Does anyone knows what it means?
Maybe I will finally be done consolidating a lifetime of cloud storage into a big-kid glacier-level LTS solution.
Dunno, bored here. Need some 20h/week project I can quit as soon as some job appears to be lining up. Ideas?1 -
!rant
University assignment asks to create some encryption harder to break than Caesar Cypher. So I decided to go online and look for some tips on making a somewhat decent algorithm.
Universal answer: don't do it
😶
Well then, night off I guess 😎2 -
I need to encrypt some large files at rest and then decrypt them immediately prior to processing.
App and files are on a Linux system (CentOS). App is in C. Machine is controlled by a third party.
What encryption libraries would you recommend? And, is there any clever way of managing the decryption key beyond compiling it in the code and doing some basic obfuscation?
Are they fancy obfuscation libraries out there, for example?
And, the reason I'm not going to SO (well, one reason) is that I don't want to have 50 answers that tell me that's it's impossible to 100% protect data on a machine you don't control. This I understand---just looking for "best effort" solution.8 -
Just because it's popular, doesn't mean it's good.
An overengineered solution can usually be simplified without breaking anything important. An oversimplified solution can rarely be upgraded without major breaking changes.
Not everything needs to follow the "best practices" - if it's not a part of the core functionality, diminishing returns often kick in quite fast.2 -
I hate it when we are discussing a feature and they ask me "what do you think?" after they said how would they go about it and i mention that i would do it differently and think that my way may be longer now but can pay off in the long run and they decline it.
What i hate even more is that after some period they revesit their decision again and come to conclusion that my way is better and now we (i) need to rewrite it but without acknowledging that i said it then and was the best solution.
AMMA KILL SOMEBODY IN THIS BISH RIGHT TF NOW!!10 -
How do I help my colleague in fighting harrassment?
This is the story of a helpless employee facing everyday harassment. Im trying to help. Seeking for your thoughts
Backstory fast forwarded: My company acquired another company. So we handle all their projects and clients now, but its a completely new domain. So we needed new people. Hired 4 employees + 1 team lead to start with. But the project process got delayed and they were free for a month. So i took 2 of them in my project and gave them some small tasks to help us over. They loved working with my team and were learning new stuff apart from what they usually did. And we were also happy of their contribution. We became good friends. All of this was in March 2020 before covid-19 was taken seriously.
About my company: I love this company. I have been in this company for more than 4 years now. People are really nice. Parties and fun events. Lot of smart and ambitious people. So company and people are awesome.
Coming back to the story. Lets call the team the 4 and team lead T. The 4 were happy that someone like T was in their team. This T had all the best knowledge about stuff and life was going to be awesome for the 4. Or was it?
Story starts: So I talk to one of these 4 on daily basis. Lets call this friend F. F is a real gentle person. Intelligent and dedicated to work. F is awesome to work with. And always enjoyed working. F is a team player and very very soft person. F is fking workoholic. So few days after project starts, F tells me work was not going well. F is getting real frustrated at work and not able to deal with it or find solution.
What happened:
This person T, who was supposed to help these 4, is real piece of shit. He is impatient, arrogant and MFing dick head. Aaaarggggg.
All the good qualities of a leader like supporting the team, boosting confidence, guiding team when they make mistakes, teaching them, were all missing from this person. T was a machine with no emotion and only clock working jerk. I have no idea how T cleared interview process, because one of the interview round is also about cultural fit into company. I know this because i take interviews for other domains. We have rejected lot of such well qualified but arrogant candidates.
So whats the problem now: this team of 4 are learning new tools and taking over the clients requests from old company. Most of the stuff is new for them. So in tat case people need lot of time to understand and figure out shit. people make mistakes while learning and you know have to deal with it. Person T abuses these 4 when something goes wrong. That's one.
Second, the T definitely knows more than these 4. So if these guys dont understand certain stuff they ask T. But T does not help them learn. T will either say busy or run away by saying thats simple and ull know when time comes. REALLY MF???
Third, T does not talk nice. T is rude and does not listen to team members. For eg, If F says some task cannot be done for some reason T will say, "y cant u do it? U r capable of doing it. Tats y u r in this job". And then point number one and two happens. Never responds to emails and messages. But if someone else does the same will not tolerate that and abuses them. List goes on.
So y not escalate and deal with that T:
This person F and other 3 are still under probation and they think complaint or escalation will back fire. These people do not want to lose job in between all this pandemic shit. They are scared.
So this was happening for a while. And i was giving lot of tips on how to handle certain situations. And how one should communicate these.
But being a gentle, soft and workoholic person, F focussed on work and assumed things will get in place as time goes by.
Today, F could not meet a requirement. So T told some shit which got F all sad. and F called up me late night and started crying explaining what happened. I felt real bad. I asked F to file harrassment case. F refused saying it was F's mistake on not completing requirement. WHO THE FK CARES. PEOPLE CANNOT TALK SHIT. I told ill file harrassment case against T. (We have a policy where others can also file if person is not courageous enough). But F did not allow me.
Then after calming down, I told F that telling the problems to me wont solve them. You have to talk to T directly and tell him on face not to talk like this. Or tell the manager about whats happening. Or tell the the HR about this. F said tat cant be done. I was like Y THE FK NOT.
Because the other 3 are not ready to talk about this to anyone as they fear they'll lose job. So if F talks and people question other 3 they might bail out. WAT THE HOLY SPIRIT.
so after lot of convincing F is still not going to
Talk to anyone about this.
So i have decided ill write an anonymous email to HR, the manager and other senior people in the organisation about whats happening.
I really dont know how itll go. Ill keep updating you guys. Feel free to share ur thoughts.3 -
A loooong time ago...
I've started my first serious job as a developer. I was young yet enthusiastic as well as a kind of a greenhorn. First time working in a business, working with a team full of experienced full-lowered ultra-seniors which were waiting to teach me the everything about software engineering.
Kind of.
Beside one senior which was the team lead as well there were two other devs. One of them was very experienced and a pretty nice guy, I could ask him anytime and he would sit down with me a give me advice. I've learned a lot of him.
Fast forward three months (yes, three months).
I was not that full kind of greenhorn anymore and people started to give me serious tasks. I had some experience in doing deployments and stuff from my other job as a sysadmin before so I was soon known as the "deployment guy", setting up deployments for our projects the right way and monitoring as well as executing them. But as it should be in every good team we had to share our knowledge so one can be on vacation or something and another colleague was able to do the task as well.
So now we come to the other teammate. The one I was not talking about till now. And that for a reason.
He was very nice too and had a couple of years as a dev on his CV, but...yeah...like...
When I switched some production systems to Linux he had to learn something about Linux. Everytime he encountered an error message he turned around and asked me how to fix it. Even. For. The. Simplest. Error. He. Could. Google. Up.
I mean okay, when one's new to a system it's not that easy, but when you have an error message which prints out THE SOLUTION FOR THE ERROR and he asks me how to fix it...excuse me?
This happened over 30 times.
A. Week.
Later on I had to introduce him to the deployment workflow for a project, so he could eventually deploy the staging environment and the production environment by hisself.
I introduced him. Not for 10 minutes. I explained him the whole workflow and the very main techniques and tools used for like two hours. Every then and when I stopped and asked him if he had any questions. He had'nt! Wonderful!
Haha. Oh no.
So he had to do his first production deployment. I sat by his side to monitor everything. He did well. One or two questions but he did well.
The same when he did his second prod deploy. Everythings fine.
And then. It. Frikkin. Begins.
I was working on the project, did some changes to the code. Okay, deploy it to dev, time for testing.
Hm.
Error checking out git. Okay, awkward. Got to investigate...
On the dev server were some files changed. Strange. The repo was all up to date. But these changes seemed newer because they were fixing at least one bug I was working on.
This doubles the strangeness.
I want over to my colleague's desk.
I asked him about any recent changes to the codebase.
"Yeah, there was a bug you were working on right? But the ticket was open like two days so I thought I'll fix it"
What the Heck dude, this bug was not critical at all and I had other tasks which were more important. Okay, but what about the changed files?
"Oh yeah, I could not remember the exact deployment steps (hint from the author: I wrote them down into our internal Wiki, he wrote them done by hisself when introducing him and after all it's two frikkin commands), so I uploaded them via FTP"
"Uhm... that's not how we do it buddy. We have to follow the procedure to avoid..."
"The boss said it was fine so I uploaded the changes directly to the production servers. It's so much easier via FTP and not this deployment crap, sorry to say that"
You. Did. What?
I could not resist and asked the boss about this. But this had not Effect at all, was the long-time best-buddy-schmuddy-friend of the boss colleague's father.
So in the end I sat there reverting, committing and deploying.
Yep
It's soooo much harder this deployment crap.
Years later, a long time after I quit the job and moved to another company, I get to know that the colleague now is responsible for technical project management.
Hm.
Project Management.
Karma's a bitch, right? -
If you think you found a solution, think twice.
If the implementation is taking too long (too many changes in different functions and classes to fix a single bug) there may be a better solution, it's never too late to reverse the changes and start again, it's not a shame, in the worst case you will reimplement the same solution, but better, in the best you'll find an easier and better one.
Don't run, even if there's a deadline.
It's much worse having to deal with negative feedbacks later. -
I'm still studying computer science/programming, I still have one year to do in order to graduate (Master). I am in a work study program so I'm working for a company half of the time, and I'm studying the other half. It is important to mention that I am the only web developer of the company
When I arrived in the company 9 months ago, I was given a Vue project which had been developed by a trainee a few weeks before my arrival and I was asked to correct a few things, it was mostly about css. Then, I was ask to add a few functionalities, nothing really hard to code, and we were supposed to test the solution in a staging environment, and if everything was ok, deploy it to prod.
However, the more I did what I was asked, the more functionalities I had to implement, until I reached a point where I had to modify the API, create new routes, etc. I'm not complaining about that, that's my job and I like it. But the solution was supposed to be ready when I arrived, it was also supposed to be tested and deployed.
The problem is, the person emitting these demands (let's call him guy X) is not from the IT service, it's a future user of the website in the admin side. The demands kept going and going and going because, according to him, the solution was not in a good enough state to be deployed, it missed too many (un)necessary features. It kept going for a few months.
The best is yet to come though : guy X was obviously a superior, and HIS superior started putting pressure on me through mails, saying the app was already supposed to be in production and he was implying that I wasn't working fast enough. Luckily, my IT supervisor was aware of what was going on and knew I obviously wasn't to blame.
In the end, the solution was eagerly deployed in production, didn't go through the staging environment and was opened to the users. Now, guy X receives complaints because none of what I did was tested (it was by me, but I wasn't going to test every single little thing because I didn't have time). Some users couldn't connect or use this or that feature and I am literally drowning in mails, all from guy X, asking me to correct things because users are blocked and it's time consuming for him to do some of the things the website was doing manually.
We are here now just because things have been done in a rush, I'm still working on it and trying to fix prod problems and it's pissing me off because we HAVE a staging environment that was supposed to prevent me from working against the clock.
On a final note, what's funny is that the code I'm modifying, the pre-existing one needs to be refactored because bits and pieces are repeated sometimes 5 times where it should have been externalized and imported from another file. But I don't know when and if I will ever be able to do that.
I could have given more context but it's 4am and I'm kinda tired, sorry if I'm not clear or anything. That's my first rant -
I know this sounds odd, but I really find algorithms things of delightful beauty.
A creative solution to some very deceptively complex problems.
Sure, some implementations aren't the best, but seeing them after just makes me appreciate the time and effort that must have gone into designing things like Merge Sort, Binary Search, Greedy Algorithms, BST, and Dijkstra's Algorithm.
So! If your code is unoptimal, looks terrible, or is a sheer abomination, take a moment to appreciate the little piece of art you've made before you go and make it better.1 -
I am new to open source, so i was trying to solve some issues on an organisation. At first it seemed like what the hack is happening, i was not able to understand the codebase that well but slowly and eventually i get to learn some stuff.
Now, i got stuck at a small problem and to solve that problem it took me a whole complete week. During that phase, i realized some things that i want to share.
As a beginner it was too hectic to find the solution to that problem so i entered that problem on every platform from where there is some chances for reply, and i realized that no one is going to help you out completely and this is the best part, i mean if someone is going to spoon feed you than you won't learn anything. I know that feeling when you are scratching your head and you just want to get out of that mess but you are stuck and there is no one to help you out, believe me just hang in there, there will be some moments when you will realize that there is no more options left and you are done than for sure you will find something which you can try.
So you should also not ask for spoon feed, if you want to learn than fall into many problems as you can.
Best of luck.5 -
What is it with non-technical managers, especially those in sales, thinking that the solution to all problems is to "just pick up the phone and ring them?" This was *always* his opinion, whether the web service we were using wasn't accepting a valid request (apparently this was best "explained over the phone", I kid you not - have you ever tried speaking JSON?!) or whether we just needed a simple request going in to increase the API limit. I mean I could send an email or log a ticket in a few minutes tops, but you want me to spend 2 hours on hold to a support department only to be told "ah we don't take those requests over the phone, here's the URL, log a ticket."
Then it's always a case of "I don't understand why they're like that, all the guys I speak to are happy to help on the phone". Yeah, beacuse you're in sales & marketing you muppet. Blathering on to each other so you can stroke the egos of yourselves and your companies is kinda in the job description.
Grr. This was all a while ago, but I thought of it just now and the pure concept just annoyed me, so here it is. I really hope he's not doing the same thing to guys under him now (but let's be honest, he probably is.)7 -
Sooooo this is the thing.
For a stupid fucking project at work we basically have to scrum manage a bunch of individual components on a rather large web app.
We start with the html and css and js bs and we all have to work on different sections of one page at a time. Large blocks right? Ok cool.
Originally I had suggested to build everything inside individual php files and then stack them up with require(). As fucking simple as fucking that. Except that the manager does not have php on her pc. The other two developer don't either. I am the only one that fucks with php OUTSIDE our fucking servers.
Go fucking figure...the lead developer does not fuck with php outside the servers.....man
So, because i know it would be a shitstorm with something as basic as installing i dunno...fucking xampp my manager said that she needs a different solution.
Fuck it...fine...whatever. i know go. So i make a fucking server wich upon being fired you can just code the templates and paste them where they need to go. Docs and everything..a sane folder structure and everything and a fucking pipleline for the assets and everything. I would have thought that shit was good enough but I even added a cmd tool that merges all the fucking html files together into one html file with all the shit included.
All in Golang. It works, its fast and i can just give them the fucking folder with the exe and it will work.
I dunno if this was the best way to do it. But it took me maybe 20 mins to do it and it works.
I would have expected our manager to be impressed but she legit did not gave two fucking shits about the fact that one of her developers is able to create this mini server for static sites shitstain project in 20 minutes.
Man I don't want praise. She thinks that jquery is the best thing in the world so I don't expect much. But shit man.......a better reaction would have been better. She basically went meh ok as long as it works.
I also showed them a demo of a flutter project to replace the shitty ass webview filled school app that they have for android and ios. Shit is native and it looks beautiful. Ask me what she said.
Go on, fucking ask me.
She said tha if it would take me much time to continue on that the she would rather leave it to the third party vendor that currently makes the app.
I told her that such shitty app costs the school 40 fucking thousand dollars a year that I could do in a fucking month, which would also be better since it would raise the salaries of me and the other 2 developers and will more importantly make us more valuable to the school.
Said that she would think about it because we have a lot of projects.
I
Fucking
Hate
It
When someone fucks with my ability to make more money. I hate it fam. And i fucking despise being limited by other people.
Fuck this week.
I am never gonna grow in here. Ever. But it pays the bills so fuck it.6 -
I was too concerned whether or not I should extend a feature, that I forgot to check if I could do so.
Now I've shot myself in the foot by breaking half of the feature and my only solution to make this work out as intented are quite ugly.
10/10 would do so again. Programming like a retard is the way hobby projects are meant to be. Best learning experience you could hope for.
Also, bless git for giving me a second chance in case I've gone full retard mode.4 -
Applying Occam's razor and I might be wrong..
Hiring a candidate and job hunt, both are fucking exhaustive process.
We, as a human race, have aimed for Moon and Mars but are unable to solve the problem at hand which can save millions of hours each year reflecting in immediate cost savings.
Here's my (idealistic) solution:
A product to connect job seekers and recruiters eliminating all the shitty complexities.
LinkedIn solved it, but then hired some PMs who started chasing metrics and bloated the fuck out of the product.
Here are some features of the product I am envisioning:
1. Job seeker signs up and builds their entire profile.
2. Ability to add/remove different sections (limited choices like certifications, projects, etc.), no custom shit allowed because each will have their own shit.
3. By default accept GDPR, Gender Identity, US equality laws, Vetran, yada yada..
4. No resume needed. Profile serves as resume. Eliminate the need to build a resume in word or resume builders.
5. Easy updates and no external resume, saves the job seeker time and gives a standard structure to recruiters to scan through eliminating cognitive load.
6. Recruiters can post their jobs and have similar sections (limited categories again).
7. Add GDPR, Vetran, etc. check boxes need basis.
8. No social shit. Recruiters can see profiles of job seekers and job seekers can see jobs. Period.
9. Employee working in Google? Awesome. Will not show Google recruiters thier profile and employee such job posts.
10. No need to apply or hunt heads. System will automatch and recommend because we are fucking in AI generation and how hard it is to match keywords!!
11. Saves job seekers and recruiters a fuck ton of time hunting the best fit.
12. This system gets you the best job that fits your profile.
Yes, there are flaws in this idea.
Yes, not all use cases are covered.
Yes, shit can be improved and this is hypothetical.
But hey! Surely doable with high impact than going on Moon or Mars right now.
Start-up world has lost its way.12 -
Our professor takes points off our code if we use tabs (not much, but still).
But the best part is having "few" spaces is also a problem. Seems like using tabs we be a solution then.
Why?!7 -
Schedule an impromptu meeting with my friend Jack Daniels.
Joking.
Best thing I do is write down the issue on a piece of paper, read what I'm stuck on and realise I have been focusing on the wrong aspect of the issue and a different solution presents itself.
Take a step back, clear your mind and start again.
If not, then remember Jack is available after work. -
Request: My WordPress website, with over 40 plugins active, some of which do the same thing, but I want to keep them all active, because fuck logic is not loading fast enough. Please fix it!
Response: Kill it with fire and buld it from scratch. Use an optimized, custom solution, tailored to your exact needs. The time needed is the same as trying to fix your broken WordPress...
Reaction: WTF? Everybody is using WordPress, that means it's the best! Why would I build my custom website on a fast and easy to maintain custom platform, optimized for my needs? Fix my loading speed!
Response 2: *facepalm*4 -
Always Stick to One Task at a Time
Whenever I’m trying to learn how to do new stuff, or if I have a project where I’d have to figure out how to do a lot of things, I try to just pick a particular task and attack that.
Often times in programming, you’ll hold a lot of context in your head depending on what you’re working on, so it’s best to focus on one thing and try to get it done. There are a lot of ways you can tackle a single problem, so a lot of things will depend on what solution you end up choosing. For example, if you’re trying to build a CMS website that build websites where it will deploy things to each user, you could organize a site where it’s a big giant app where everyone has a specific subdomain, or you can make it so that each individual subdomain is a separate instance of your app with configuration changes. There are pros and cons to each approach, so this is where the judgment comes in and why some people say programming is an art, since you constantly have to weigh different tradeoffs.1 -
On the MSc I was participating in, there is a teacher that has a lesson about Databases.
The MSc was not only for experience computer science students. We were informed that the first semester would be as an introduction to all.
So, Databases. No introduction at all. Just read the powerpoint and the pdf he had just translated (or not, because some were just from the internet), just refers to how they are structured briefly. He showed everything about Databases without the students that didn't know much to be involved (we didn't get to our lab for some reason) and then there was his assignment.
His assignment was written as it would be from a customer that knows shit about Databases (sorry but I had to rant). We sat down student's that knew already Databases and some of us worked as database engineers. We agreed on some steps that after read the next chapter of the assignment we reconfigured them. And so on, until we had nothing and we were back at the beginning.
Needless to say, I did not lose my Christmas holidays for him. It took me 2 days after to build a database that was not a full solution but a part (I wad noy sure, the assignment was ambiguous). I passed the lesson with the minimum passable grade.
So, I wrote a nice email to the MSc teacher that had to organize it (or something like that). I did not swear at all. I was professional and wrote what I encountered and what it should have been. The Databases teacher had always that smirk and face that he was THE boss and had no respect for his own lesson. But I didn't mention it. The organizing teacher shared the email with the databases teacher.
And the time came that we had another lesson (web development, it was awful under him) with the databases teacher. And he had the wonderful idea to read the email out loud in front if everyone. He did noy mention my name. I raised my hand and told my colleagues it was me. Then I asked him in front of them, if he was contented with the results (only a few passed the databases lesson and max grade was the smallest passable), first he avoided the question. I asked again. And he said yes. We all looked at each other and somehow knew. No one spoke and I didn't push because I didn't want to take the web lesson's hours for this. It was just hopeless.
From there on, the teachers said we were their best class ever but the most complaining one. They didn't even bother to analyze the "complaints".
So, there you go. One of the lot of those teachers.1 -
Best place to code: Home! In my bed !
Why ? : Simple ! I can take a quick nap when i am tired and wake up with the solution !6 -
Itexus is a full-cycle custom software development agency
Itexus is a full-cycle IT company for software development
We https://itexus.com/ provide all kinds of IT services that any modern company needs.
Our mission
Help the client to automate business processes at the lowest cost and in the shortest possible time
Our clients stay with us for a long time, because. In working with them, we adhere to the following principles:
We help the Customer to reduce costs by choosing the best options for automating his business tasks
We adhere to an individual approach to each client, we focus on the end user and the solution of his problems, and do not offer an average option
We develop solutions that are easy to use and do not require extensive training to use them.
We follow trends and develop actual design
We develop reliable and stable IT solutions using proven technologies and many years of experience of our employees in the development3 -
So i'm visiting the JavaScript bubble every now and then when i'm writing on the userscript i develop to fix bugs in our ticketing system or fix some clients website they negelected. Every time i'm searching for answers to the weird problems that inevitably turn up i have to filter out all the threads that derail with the classic 'google jQuery basic arithmetic plugin' craziness to find an actual vanilla solution to my problem.
All the time i wonder why on earth people put up with this framework hell. This is part serious question and part rant but seriously, how did we come to this? With all that jQuery, React, Node, whatever stuff i'm kinda losing the overview over what's even todays standard. I always try to keep my code as vanilla as possible without using external libraries. But it seems the entire web development industry is heading the completly other way. I tried to look into a few frameworks but i never really see the appeal. Just now i looked up react native because the last 20 rants talked about it and immediately noped out because they fucking create a DOM in js, why the fuck would you do this?!
Worst thing about this framework shithole is that some frameworks are beeing pulled into the mix for very weird and unnecessary reasons. Best example is a charts library i recently used to visualize a database of temperatures that was completely written in native js but pulled jQuery in for the equivalent of window.addEventListener('load',function(stuff)) and i was furious. I rewrote the code and could throw out the jQuery dependency with no problem. What the fuck is wrong with people?
Alright since you made it here: I'm not trying to throw any of you under the bus for using frameworks. I just fail to understand why you would use these. To each their own and unless your site has the performance of the ticketing system i use at work that takes like 15 seconds to load one fucking page i won't complain at all. But pull in a framework just to do a task you can easily do in native js in remotely the same timeframe you are on my list.2 -
So after two and a half months of waiting 30-40 minutes for every build on the build server, and trying my best to start refactoring the hugeness of our main solution with limited success...
I discover that 2/3 of the build time is caused by the Get Source step deleting and getting EVERY BRANCH IN THE MAIN REPO!!!
This was taking 15-25 minutes. Every. Build.
I changed the build definition to map and cloak the repo correctly, so now the Get Source step takes less than a minute, and the whole build completes in 12-14 minutes...
Yowza! I guess that's a pretty good win to start my two week's vacation on ;-) -
So my boss wants me to develop a complete business management solution + mobile app. (It’s a startup project based company). She doesn’t want to use dubsado / asana / etc and wants me to take the best of all and custom build it for her.
Now I was a mobile app developer. Native iOS and android + recently learnt flutter. No backend or web or api skill.
But screw it, I wanted to learn laravel since a long time anyway so that I could be an independent developer.
So I have agreed and started it...
Bitten more than I can chew? Time will tell...what do you think?10 -
For some reason I keep over engineering stuff to the point I spend 2 hours thinking the best way to do something. I'm making the backend for a project of mine and I wanted somewhat decent error handling and useful error responses. I won't go into detail here but let's say that in any other (oo) language it would be a no-brainer to do this with OOP inheritance, but Rust does OOP by composition (and there's no way to upcast traits and downcasting is hard). I ended up wasting so much time thinking of how to do something generic enough, easily extendable and that doesn't involve any boilerplate or repeated code with no success. What I didn't realize is that my API will not be public (in the sense that the API is not the service I offer), I'm the only one who needs to figure out why I got a 400 or a 403. There's no need to return a response stating exactly which field had a wrong value or exactly what resource had it's access denied to the user. I can just look at the error code, my documentation and the request I made to infer what caused the error. If that does not work I can always take a quick look at the source code of the server to see what went wrong. So In short I ended up thrashing all the refactoring I had done and stayed with my current solution for error-handling. I have found a few places that could use some improvement, but it's nothing compared to the whole revamp I was doing of the whole thing.
This is not the first time I over engineer stuff (and probably won't be the last). I think I do it in order to be future-proof. I make my code generic enough so in case any requirements change in the future I don't have to rewrite everything, but that adds no real value to my stuff since I'm always working solo, the projects aren't super big and a rewrite wouldn't take too long. In the end I just end up wasting time, sanity and keystrokes on stuff that will just slow down my development speed further down the road without generating any benefits.
Why am I like this? Oh well, I'm just glad I figured out this wasn't necessary before putting many hours of work into it. -
I know this is utopic, but I've been thinking for a while now about starting an open source platform for figuring out the problems of our society and finding real world, applicable, open source solutions for them.
To give you some more details, the platform should have two interfaces:
- one for people involved in researching, compiling issues into smaller, concrete chunks that can be tackled in the real world, discuss and try to find workable solutions for the issues and so on
- one for the general public to search through the database of issues, become aware of the problems and follow progress on the issues that people started working on
Of course, anyone can join the platform, both as an observer (and have the ability to follow issues they find interesting) and/or contributor (and actually work with the community to make the world a better place in any way they can).
Each area of expertise would have some people that will manage the smaller communities that would build around issues, much like people already do in the open source community, managing teams to focus on the important thins for each issue. (I haven't found a solution for big egos getting in the way yet, but it would be nice if the people involved would focus on fixing stuff in stead of debating about tabs vs spaces, if you know what I mean).
The goal of this project would be to bring together as many people from all kind of fields to actually try to fix this broken society.
It would be even better if it attracted people with money and access to resources (one example off the top of my head being people like Elon Musk) that could help implement the solutions proposed by the community without expecting to gain profit off of it (profit is also acceptable if it is made in a considerate, fair and helpful way, but would not be promoted on the platform).
The whole thing would be voluntary work; no salary, no other commitment than the personal pledge that once someone chooses to tackle something, he/she will also see it trough (or at least do his/her best).
The platform would be something like a mix of real time communication, issue tracker, project management tool and publishing platform.
I don't yet have all the details for how it should all fit together, but if there is something that I would like to start, this is definitely it!
PS: I don't think I can ever do something like this by myself, and I don't really have the time to manage a community of developers to start work on it right now. But if you guys think something like this is something worth your time, I will make time and at least start on defining the architecture and try to turn this into a real project.
If enough people are interested, I will drop any other side projects and do my best to get this into the world!
Thank you for reading :)6 -
Whatever the f is wrong with numpy devs!!!!
Like seriously bro....
I can't import the effing sklearn.decomposition to do some basic PCA and the best solution out there is to downgrade it to version 1.16.1. Like hell!!!!
Issue has been known since last year, but guess who cares effukers8 -
Project is dammed, is broken, we complain about it for almost 3 months, daily, code is old and client is full of bad practices and is always searching for a way to blame us for his failure.
Administration decides that best solution is motivate meditation techniques on dev team1 -
Hey just brainstorming a business/ startup idea I may try out sometime down the line. I wanted to put it in writing available to my peers for review. If that sounds boring, sorry.
So I've had an idea and I know it's a million dollar idea because it's absolutely boring as fuck.
Recently I have been learning about NoSQL and it has gotten me pretty excited about unstructured data.
Now the first thing you should know about me is I like to make business software. I don't like games or social networks or blah blah blah, I like business stuff. One dream I have always had is to make THE business solution. I've noticed so many specific business solutions for very specific areas of work. Specific software for car washes, which is separate from the software for car maintenance, which is separate from the point-of-sales software, which is separate from the [...]
One of the problems with this is the inconsistency. Modular is good, but only if the modules are compatible. They aren't. Training needs to be provided for each individual system since they are all vastly different. And worst of all, since all of these different applications reach their own niche market, they charge out the butt for things that are usually very simple "POST a form over http(s)" machines.
I mean let's not get too dreamy here. My solution is an over-complicated form-builder. But it would be a game-changer for small and medium-sized businesses. Allowing users to build their own front-end and back-end disguised as a drag-and-drop form builder would be THE alternative, because they could bring all of their solutions into a single solution (one bill!) and since THEY are the ones that build what they need, they can have custom business software for the price of a spreadsheet program.
The price difference we could offer would be IMMENSE. Not only would we be able to offer "cookie-cutter" pricing as opposed to "custom" pricing, but since this generic solution could be used for essentially all of their systems, we aren't just decreasing one bill. We're decreasing one bill, and eliminating the rest entirely. We could devastate competition.
"BUT ALGO", you scream in despair, "USERS AREN'T SMART ENOUGH TO DRAG AND DROP FORM PARTS TO MAKE A FORM"
I mean ya true. But you say that like it's a bad thing. For one, we can just offer a huge library of templates. And for another, which is part of the business plan, we can charge people support dollars to help them drag and drop their stupid fucking forms!! Think of the MONEEYYYY YOU COULD MAKEE BY EXPLAINING HOW TO COLLECT FIRST AND LAST NAMEEE. Fuck.
The controls library would be extensible of course. You would be able to download different, more specialized controls if you need them. But the goal would be to satsify those needs with the standard collection of controls (Including interesting ones line barcode scanner and signature input and all that). But if all else fails, maybe someone made an open source control for you to implement and ignore that stupid donation button. We all do.
This could PURGE the world of overpriced and junky specialized business software, and best of all, it's aimed at smaller businesses. With smaller businesses making more profit, they will stay afloat better and may start to compete with their larger foes. Greater for the entire economy.
Anyways, I'm sure it's full of holes. Everything always is. But I still think it's something I'll try before I die.24 -
I maintain two websites for my employer. The head of my department and my manager decided it’s best for me to focus my time on website A and website B should be replatformed to an out of the box solution. For website B, we’d work with our IT team to find something suitable.
I did some research and came up with a list of possible solutions. IT looked into solutions that would work with the org’s best practices for tech. A few sales pitches and demos were arranged with the top choices.
Stakeholder for website B is really digging in her heels. SH keeps badgering our Product Manager and IT about why can’t we just build in-house. The out of box solutions don’t do everything she wants.
PM tells SH that no solution will be perfect. PM also reminds SH that comparable institutions just use Google sheets/forms and do everything by hand. So choose an out of the box platform or use Google forms.
Plus, the list of improvements the SH wanted for website B would take at least a year if I did them on my own and there’s no budget to out source the labor. That’s not counting bring the code up to best practices or improving database efficiency.
I’m glad I don’t have to work with Stakeholder anymore. SH and her department were just a pain. They want a lot of custom tech solutions but they freak out at the smallest talk about tech issues. -
when the website is so huge and a bug is causing every to be delayed a minute before loading, the debugger isn't showing anything, and the project lead's best solution is to throw more RAM at it
-
What's the best way to run MS Office from Linux? Cloud based, native with wine/play on linux, or a native suite? I don't want to run a VM just for office.
I've tried Libre Office but it doesn't format well for my college professors, and office online works but it's not as quick plus you need the online connection.
Would something like WPS Office be my best option if I wanted a native solution that looked and felt like office with the best level of compatibility?12 -
I really like helping other learn how to use a programming language or solve problems on general. I often go out of my way and stop working on my hobby projects, just to help someone.
Thag being said, I'm no prgramming god. I myself am striving to become a better programmer.
I make mistakes, I can't always help you, I am still learning, but I only have good intentions. And you are by no means obligated to follow my advice. Quite the contrary, fight me, try to prove me wrong or say point out possible flaws. THINK ABOUT WHAT I TELL YOU. DON'T JUST BLINDLY FOLLOW MY ADVICE AND BITCH ON ME LATER.
This happens rather often and I can see why you want to blame me. And I can't deny that part of this is also my fault.
Situations like these don't really tilt me.
But today someone had the fucking nerve to pop a file into the chat and get mad at me for sugvesting a cleaner, shorter and more efficient solution. LIKE I DON'T FUCKING CARE THAT IT TOOK YOU A WHOLE DAY TO IMPLEMENT SOMETHING I CAN DO BETTER IN MINUTES, I JUST WANT TO HELP YOU.
But the best thing I get afterwards: "But you told me to do it like that" BITCH WHAT!?
I have chat logs telling me loud and clear that the concept we never talked about before in private nor on a public server (bless discord's search function). And I will not accept your lousy excuse of having me cobfused with someone. You disrespected me greatly, you put words in my mouth, just to justify your pity anger, when I'm trying to help you?!
Get crucified and put on a shooting range!
I offer you out of pure goodwill. Something you'd normally have to pay for. And this is the treatment I get in return?
Just rm -rf your disastrous, dd -if=/dev/urandom your harddrive and sod off!2 -
Updating 4K rows in a table with 4M using Libreoffice Calc to generate the queries.
I know, it's not the best solution, but I'm afraid of the single query solution.
Please, forgive me.3 -
I occasionally wonder if my supervisors think I'm an idiot because I'm constantly implementing stuff the wrong way and asking if I am even on the right track to a solution.
I guess that's what internships are for but I hate being dependent entirely on other developers. I may not know the best way to do stuff but I do know how to do stuff :(4 -
Dear Prestashop developers, f**k YOU!
I already hate this shitfuck what you call the best open source e-commerce solution, but your module validation technique sucks.
They use tons of useless rules, but the last addition was the last drop: they force you to use the old (and long) array declaration.
So now I have 500 new errors in this fucking module.
Why the fuck do you want me to force an old syntax?3 -
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. -
About 95% of developer jobs in my country are unevenly split between the administrative and commercial capitals, with an overwhelming majority favouring the commercial capital. I live in the administrative one. Any dev jobs outside both states pay a fraction of what is tenable
Not having much luck with my search, I reluctantly applied for this php role advertised in one of the other states. I wasn't even expecting them to write back cuz the pay is piss poor. it's on site, about 400km away. For some context the salary is 120k but the tfare to and from there is in the neighbourhood of 70 grand
Anyway, the employer wrote back to me on WhatsApp, sending a full stack sample project for me to complete in 36 hours, which frankly, I found pitiful and absurd. Call me entitled, Arrogant, etc. But I didn't anticipate a cv and github like mine, from a company requiring relocation from the capital for a paltry retainer, would demand I complete a sample project. For 120k ffs. I was already making more than that years ago when our inflation hadn't ballooned 30x over
I haven't been able to bring myself to start the project. Not like I know much else to do with my life, I just slipped into a catatonic state shortly after reading it. EVERYBODY I started software with a decade ago, is either outside the country now or earning too much fx to bother with departure. I'm not envious of them, just asking for something decent to get by or not live in penury. Comfortable enough to afford basics without breaking the bank
Shortly after leaving my last workplace, I made a dark joke that: the best ones who leave, get better jobs. The average ones are either retained or land similarly mediocre positions. But the truly incompetent employees wind up in the village, farming
One detail I left out is that this sample project guy is located in the same state as my hometown. In a sense, I made a self fulfilling prophecy
He's going to request I turn in my solution tomorrow but I might just come clean about his sample project catching me off guard. I did an assessment this morning for a coy advertising a senior developer role. 4 segments, not one single one technical /code. Just boring shits about OCEAN, time management, communication. I checked my results when I was done and saw I'd done a previous test with these same guys 5 months ago. I shockingly aced the topics back then but didn't get hired anyway
This time around, almost none of the scores ramped above 50 -
Fucking fuck! How could I be so naive?
I just started my masters in Enterprise Software Development. It's basically the continuation of the CS BSc I finished this year. I don't consider myself a lazy and bad dev and I finished in the top 5-10% of the class - I say this not because I want to brag, I know I'm not the best, I know I have my defects, BUT I don't think that it's a good sign that all of us, my top graduate friends all full of hate and anger against this whole MSc after just a week. And... It's mostly one fucking egoistic teacher's fault.
Okay, all of us are working full time which is obviously tiring if you combine it with the university classes. But I still think I could manage this first week better, if I wouldn't fucking came to the same line of the faculty.
I deeply fucking hate that I've been naively thinking that the masters will be different after experiencing one of the worst teachers last year. It's fucking first week, and I can't change the specialization anymore, only give up. I wanted to fill up the void with some usefulness, but I just fucking messed it up.
This "beloved" teacher is from the industry, he has a lot of experience and started to teach recently. Which is not a problem, no! It should be a great thing by default. But the way he holds his courses is inaccaptable. I don't think I have the right to share everything, but the following stuff just grinds my gears... Like a fucking lot:
1) He brags about a lot of stuff. Like he made really good deals in the past. Why should we know, that he made a contract with a client for 20 million euros. Okay. Whatever. That doesn't help us, and I think that bragging makes him look like an egoistic scum.
2) I hate this one the most: he fucking says that we have a choice in the administrative stuff. He gives us some hope and offers the possibility to argument and come up with our own solutions for grading and etc. But oh boy, is this a false hope, a fake idea of free will. He already knows what the final solution will be and on what kind of decisions will we all "agree". He did this last year, he does it again. Fucking naiveness of mine...
3) Lastly, he decided, that we have to go to theatre with him, all of us. No exception. And I like the theatre. But only when it isn't forced. Why and how could you pair this up with the grade you give to your students? Because that's what he does.
FML. How can I already hate this? How can I already be fed up with all the stuff? Anyways, I'm signing the contract with the university tomorrow, so let the fun games begin... I know, I look like a whining little boy now, but I just fucking had to went it after this deep fried shit-day. I probably have to get some sleep, and everything's gonna be fine. Eventually, skipping classes might become necessary in order to bear all this shit.6 -
Yesterday I spent my whole fucking day solving a bug from a Drupal multistep form, the kind of bugs you know it worked for a year then suddenly start to go full retard and simply not working at all
Took me half a day to get how it worked, half the rest to get why it stopped working and how to to make it work again, knowing that the "old fashion way" can't be applied anymore for dumb reasons (unless the client wants his user and payment history tables to be dropped, which I doubt)
I don't know if my solution is the best, but it works without too much tweaks, and hey, it still works today!! -
Maxi-Rant, rest in the first comment!
Yay, I've caught up with my "watch later" list on YouTube! Next thing: Just quickly go through my subscribed channels and add old videos that I haven't seen yet to the watch later list so that I have more stuff to watch the next months. The easiest way to do that is to go to the "all uploads" playlist of the channel (that is luckily always linked now, it used to be hidden sometimes) and use "add all to" to get them on my playlist. Then sort out the stuff that I've already seen and turn on automatic sorting by date, easy. Yeah...
Firstly, in the new design there's no "add all to", I have to go to the old design. For my own playlists, there's a handy "edit" button to do that, but on other pages I have to do it manually. Luckily I have set Ctrl+Shift+1 as a shortcut for "&disable_polymer=true" long ago.
Next surprise: On "all uploads" playlists, there is no "add all to" button. It's on every single other playlist on YouTube, including "liked", "watch later", "favourites" and so on, just not there.
Fine, I'll just abuse my subscription playlist script that I already have by making a copy of it, putting the channel IDs in it and setting the last execution date to 1.1.2001. Little problem with that: Google apps scripts can run for at most 5 minutes and the YouTube API restricts it to add one video per second. So it doesn't work for more than 300 videos. I could now try to split it up by dates, but I didn't write the script myself and I don't know how it sorts the videos to add, so I'll just google for another solution instead.
Found one: Go to the video overview of the channel in the old layout, Ctrl+Shift+I, paste this little Javascript thing and it automatically clicks all the little clocks that add the video to the watch later list. Yay, that works! Ok, i'm restricted to 5000 videos, because that's the maximum size of a YouTube playlist, so I can't immediately add all 8000+, but whatever, that's a minor problem and I'll sort out later anyway. Still another little problem: For some reason I can't automatically sort the watch later list. Because that would be too easy.
But whatever, I'll just use "add all to" from there to add it to my creatively named "WL" list. If that thing is restricted by the same rate limit of 1 video per second, it should be done in about 1½ hours. A bit long, but hey, I'm dealing with 5000 videos. Waiting 2 hours... Waiting 3 hours... Nothing happens. It would be nice if it at least added them one by one, but no, it waits an eternity and then adds all at once. At least in theory, right now it does absolutely nothing.
Shortly considered running it for more hours or even days on my Raspberry Pi, but that thing already struggles when using Chromium normally, I shouldn't bother it with anything that has to do with 5000 videos.
Ok, what else can I do then? Googling, trying out different things, mainly external services that have their own concept of "playlists" and can then add them to an arbitrary playlist later...
Even tried writing my own Java program with the YouTube API, but after about an hour not even the example program in the YouTube API tutorial worked (50 errors and even more open questions, woohoo), so I discarded that idea.
Then I discovered "DiskYT". Everything looked like it would work and I'm still convinced that I can do it with that little pile of shit. Why is it a pile of shit? Well, for example the site reloads itself after a while, so it can at most add 700 videos to a playlist. Also I can't just paste the channel link (even though it recognises those links, but just to show an error message that it can't copy from channels). I can't enter/paste URLs, I have to drag them. The site saves absolutely nothing (should in theory work, but in practise it doesn't), so I have to re-drag everything on every try. In one network, the "authorise YouTube" button (that I have to press again on every computer) does absolutely nothing ("inspect" reveals that there isn't even any action bound to the button), in another network the page mostly doesn't work at all or the button to copy from playlists is suddenly gone or other weird stuff. Luckily I have the WiFi at home, there it works in theory. But just on my desktop PC, no other device, wow. I tried to run it on my new laptop, but it's so new that it still has the preinstalled OS and there I can't deactivate going to standby when closing the laptop, so while I expected it to add 5000 videos, it instead added 4 and went to standby. But doesn't matter, because it would have failed at about 700 anyway. Every time I try to use this website, I get new problems, but it seems to still be the best option, because everything else just doesn't do anything. This page at least got to 700 before.
Continuing in first comment!4 -
Bruh, tbh, this is kind of going to be a sad rant.
tl;dr: LEETCODE THE FUCK UP AND GET INTO FANG.
For all the people out there, just stop fucking around with small companies/startups early in your career. Leetcode up and get into FANG. Once you have that validation, these startups will be much easier to get into.
I have gone through this first hand.
After amazing on-sites with multiple startups, where everyone said that I'm the kind of person they're looking for (background wise: CS grad, startup experience, 2+ YOE as a fullstack Dev using Java, py, js and all the famous frameworks you could name), they rejected me.
Heck, a company flew me out to SF from Seattle where I think I had had my best on-site ever. They rejected me today. The sad part is that I actually for once really believed in the mission of the company.
At this point, I have wasted so much time reading about the xyz startup that's about to disrupt pqr industry (to prepare for behavioral/cultural interview), practiced for such shitty interviews like pair programming etc., worked on numerous take home projects (completing all those "bonus" parts) and deploying it and spending money out of my own pocket for that.
I'M JUST FUCKING DONE WITH THIS SHIT.
I have given mock interviews with ex bosses and friends and they told me that I'm good. Heck, I even solved a LC medium in 20 minutes (optimal solution) but still got rejected.
I'm kind of writing this for myself and people who are on the same boat as I am:
Get into FANG and then think about other shit. STOP looking for smaller companies and being scared of getting your ass kicked by a Leetcode interview. Any company who would not take LC interviews will prefer someone from FANG unless you're lucky as fuck. You don't want your career to be based on luck, man. That shit's not gonna take you anywhere.4 -
Today for my last 2016's day at work, I fix a bug in two minutes but it took me two days to find a solution...
I think that it's my best years ending of my life! -
This is a part rant-part question.
So a little backstory first:
I work in a small company (5 including me) which is mostly into consultation (we have many tech partners where we either resell their products or if there is a requirement from one of our clients, we get our partners to develop it for them and fulfill the client requirements) so as you can see there is a lot of external dependencies. I act as a one-hat-fits-all tech guy, handling the company websites, social media channels, technical documentation, tech support, quicks POCs (so anything to do with anything technical, I handle them). I am a bit fed up now, since the CEO expects me to do some absurd shit (and sometimes micro manages me, like WTF I am the only one who works there with 100% commitment) and expects me to deliver them by yesterday.
So anyway long story short, our CEO finally had the brains to understand that we should start having our own product (which i had been subtly suggesting him to do for a while now!).
Now he came up with a fairly workable concept that would have good market reach (i atleast give him credits for that) and he wanted me to suggest the best way to move forward (from a both business and technical point of view). The concept is to have an auction-based platform for users to buy everyday products.
I suggested we build a web app as opposed to a mobile one (which is obvious, since i didnt want to develop a seperate website and a mobile app, and anyway just because we can doesnt mean we have to make a mobile app for everything), and recommended the Node/react based JS tech stack to build it.
At first he wanted me to single handedly build the whole platform within a month, I almost flipped (but me being me) then somehow calmed down and finally was able to explain him how complicated it was to single-handedly build a platform of such complexity (especially given my limited experience; did I mention that this is my first job and I am still in college, yeah!!) and convinced him to get an experienced back-end dev and another dev to help me with it.
Now comes the problem, I was to prepare a scope document outlining all the business and technical requirements of the project along with a tentative cost, which was fairly straightforward. I am currently stuck at deciding the server requirements and the system architecture for the proposed solution (I am thinking of either going with AWS - which looks a bit complicated to setup - or go with either Digital Ocean or Heroku):
I have assumed that at peak times we would have around 500-1000 users concurrently
And a daily userbase of 1000 users (atleast for the first few months of the platform running)
What would be the best way forward guys?
I did some extensive (i mean i read through some medium blogs! and aws documentation) research and put together the following specs (if we are going through AWS):
One AWS t3.medium ec2 instance for the node server (two if we want High Availability by coupling with the AWS load balancer and Elastic Beanstalk)
The db.t3.small postgres database
The S3 Storage bucket (100gb) for the React Front end hosting
AWS SNS for email/sms OTP and notification
And AWS CloudMonitor for logging amd monitoring.
Am I speculating the requirements properly, where have I missed??
Can u guys suggest what is the best specification for such a requirement (how do you guys decide what plan to go with)?
Any suggestions, corrections, advices are welcome3 -
When you're at an interview and they give you 5 mins to answer a technical problem and you panic, give an uncertain, semicorrect solution and the minute you walk out you know the best answer. FML.2
-
//long rant ahead!
I need to plan a Wiki with SharePoint for not connected Sites.
Im now in dispute with my CoWorker since 3 Months, this is how the conversation goes. My two bosses are involved in this and also unhappy about SharePoint.
[C refers to CoWorker, M for me]
C: Hey, we finished SharePoint with Selfservice Storage Rooms. They even have a Wiki.
M: Okay cool, will check it out
C: Well we need to also plan the Wiki inside, I already asked our Department Head and he agreed, that you will be the one.
M: Okkkkaaayy, normaly it's your job to do such things, but welp, I will look into it, if we can work with it.
(2 Weeks pass)
M: I checked SharePoint out and tested everything. The Wiki is a Nogo, we need a other solution or programm for ourself a Wiki Integration/Engine. Did you maybe check out Confluence? It has also a SharePoint integration plugin.
C: We wont do Confluence, too expensive (already overspent the budget for SharePoint in six digits 🤬). Also we wont add to SharePoint Custom Code, it needs to stay standard.
M: Thats impossible, SharePoint Wiki is shit and also handels sites just like documents, no brain behind! Also you overspent the Budget and now it's my Problem?!
C: You need to do the best out of it.
(3 weeks passes and we get a meeting with the department heads)
M: Alright I made a UseCase and documented where the essential flaws are in SharePoint Wiki and why we cant use it.
Boss: Ok if it's impossible to use, then we will stay on our Fileserver for Documents and wont use SharePoint.
M: Thats not my Point, my statement is, as status today, SharePoint Wiki is not the right solution, code or buy software to it.
Boss: We will do a Prove of Concept, if it doesnt work then we will aboard it.
M: Well it is only some missing essentials, like hierarchy and Groups for the Pages, Example Confluence has this. If we could built in this features in SharePoint, everything would work out.
C: (angry) I told you that we wont use Confluence!
M: (calm) I said we need Features, not Confluence. Please mind the consent.
(3 weeks passes, and one more meating with bosses)
M: alright here again is a analyses, why already in Theory the current SharePoint Wiki wont work. It's already flawed in the core.
Boss: Yea SharePoint is crap, I checked out confluence and thats a real Wiki.
C: Well I dont know anything about Confluence and never looked at it. But if SharePoint is a fail we need the Proof of Concept.
M: Why do we need to do a Proof of Concept, when it already doesnt work in Theory! Thats nonsence and unlogical.
Next meeting will be in 4 weeks and I will give him the FUCKING PROOF OF CONCEPT. I will be a Bastard and build behind CoWorkers back a Confluence Wiki to show the Departmentheads how to built it right.
I hate CoWorker now, he makes a part of my loved Job a hell, I will goddamn cuk Coworker to space, that fucking Cukatron of lazyness and shit 🤬. I provide the Solutions and you just say no, how dafuq will the project advance, if you always say NO! Are you so unflexible and fixed on your Castle of Ignorancy!5 -
Our owner's other company sells products online (or has the ability to anyways). Their current site is 7+ years old WordPress/Woocommerce and is seriously outdated because the site breaks if you update anything so we've been told to make a new site (finally). They also said they were going to release a whole new line up of products. So the first thing I tried to do was get them to nail down their product line and how shipping was going to be configured. I was told to just use the shipping from the previous site.
Turns out those shipping rates don't use any sort of math or automation at all, there is literally a manually set shipping value for every single product for every single shipping location (30*60) and even values for different quantities. And there's no way to export these rates into a readable table because the plugins they use shove all the data into the postmeta table, I'm forced to go through and put the data into a spreadsheet so that I can attempt to organize it and hopefully find someone way to automate it. Owner claims at one point that he has a similar spreadsheet that's more up to date but for some reason refuses to send it over or put me in touch with the right people in the shipping department.
I've gone through the shipping rates with the old products and the new products and organized them as best I can and each time I've gotten done and shown them the spreadsheet with their products and shipping, they add or change something which requires me to basically wipe the slate clean and start over eating another 50 or so hours of my time, which with everything else really means another month+ to find time to work on it between other projects.
After about a year they finished their products and I finally finished the planning and got approval to build it out for the site. Small victory!!
After about 60 hours plugging these values into the database (only about 1/3 done) I get an email from their head of shipping who tells me the values in my spreadsheet are "terribly inaccurate, in some areas by $100+" and that the data should not be used anywhere.
So after something like a year and a half and 200+ hours of work, the data I've been using to plan all this isn't even accurate. I'm trying not to go crazy here but this kind of shit is unacceptable. When we're done with this I'm going to send the owner an invoice to show him how much money he wasted on this because nothing was planned and he just wanted it built. There's a fucking process for a reason, when you don't follow the process you fuck everything up. If a client had pulled this shit and turned their simple site into this much work they would have been dropped. I get constant emails asking when the new site will be done and every time my answer is "I'm still waiting for x items that I asked for last time you asked where we were." He gets a couple things on the list and sends them back and then goes unresponsive for weeks at a time.
Management has been telling me that I seem more stressed lately but only one of them understands what's going on here when I explain it. The rest say stupid shit like "why don't you automate it" or "make an intern do it." You won't let me hire an intern and even if I did, I'm not sure I could explain how the shipping works now to even trust someone else to do it. I'm hoping when the shipping guy gives me the new sheet that maybe there's some easier solution here because I'm ready to start shooting people.2 -
Just dropping by to tell you that gocryptfs is the best solution for encrypting a directory that I have ever come across and isn't absolute cancer to set up.
Look it up. It's amazing.2 -
How ofte are you guys absolutely sure that you've picked the right solution for a specific problem? As a novice programmer it bugs me to death that I sometimes don't know if I'm using a "best practice" solution4
-
The hype of Artificial Intelligence and Neutral Net gets me sick by the day.
We all know that the potential power of AI’s give stock prices a bump and bolster investor confidence. But too many companies are reluctant to address its very real limits. It has evidently become a taboo to discuss AI’s shortcomings and the limitations of machine learning, neural nets, and deep learning. However, if we want to strategically deploy these technologies in enterprises, we really need to talk about its weaknesses.
AI lacks common sense. AI may be able to recognize that within a photo, there’s a man on a horse. But it probably won’t appreciate that the figures are actually a bronze sculpture of a man on a horse, not an actual man on an actual horse.
Let's consider the lesson offered by Margaret Mitchell, a research scientist at Google. Mitchell helps develop computers that can communicate about what they see and understand. As she feeds images and data to AIs, she asks them questions about what they “see.” In one case, Mitchell fed an AI lots of input about fun things and activities. When Mitchell showed the AI an image of a koala bear, it said, “Cute creature!” But when she showed the AI a picture of a house violently burning down, the AI exclaimed, “That’s awesome!”
The AI selected this response due to the orange and red colors it scanned in the photo; these fiery tones were frequently associated with positive responses in the AI’s input data set. It’s stories like these that demonstrate AI’s inevitable gaps, blind spots, and complete lack of common sense.
AI is data-hungry and brittle. Neural nets require far too much data to match human intellects. In most cases, they require thousands or millions of examples to learn from. Worse still, each time you need to recognize a new type of item, you have to start from scratch.
Algorithmic problem-solving is also severely hampered by the quality of data it’s fed. If an AI hasn’t been explicitly told how to answer a question, it can’t reason it out. It cannot respond to an unexpected change if it hasn’t been programmed to anticipate it.
Today’s business world is filled with disruptions and events—from physical to economic to political—and these disruptions require interpretation and flexibility. Algorithms alone cannot handle that.
"AI lacks intuition". Humans use intuition to navigate the physical world. When you pivot and swing to hit a tennis ball or step off a sidewalk to cross the street, you do so without a thought—things that would require a robot so much processing power that it’s almost inconceivable that we would engineer them.
Algorithms get trapped in local optima. When assigned a task, a computer program may find solutions that are close by in the search process—known as the local optimum—but fail to find the best of all possible solutions. Finding the best global solution would require understanding context and changing context, or thinking creatively about the problem and potential solutions. Humans can do that. They can connect seemingly disparate concepts and come up with out-of-the-box thinking that solves problems in novel ways. AI cannot.
"AI can’t explain itself". AI may come up with the right answers, but even researchers who train AI systems often do not understand how an algorithm reached a specific conclusion. This is very problematic when AI is used in the context of medical diagnoses, for example, or in any environment where decisions have non-trivial consequences. What the algorithm has “learned” remains a mystery to everyone. Even if the AI is right, people will not trust its analytical output.
Artificial Intelligence offers tremendous opportunities and capabilities but it can’t see the world as we humans do. All we need do is work on its weaknesses and have them sorted out rather than have it overly hyped with make-believes and ignore its limitations in plain sight.
Ref: https://thriveglobal.com/stories/...6 -
WHITEPAPERS.
Not exactly a programming problem, but one of my many task (as i am apparently a multi headed hydra) is it to find Software for tasks. I made the experience, as more marketing experts are on it, and as more SEO is poured in as more information about a topic degrade.
Two examples:
i wanted to find out if there is anything that speaks AGAINST "the cloud" as a concept for Data Procesessing and Storage. (Beside that the company internet connection is crap). There are tons of documents that in a semi "scientific" way show that having a data centre with a constant staff of experts is superios to everything. And it goes on, every company has a different version of basically the same document, and they all subtley show that THIS company is the best.
Example 2:
ERP Software, the most infested pool of filth i have entered yet, be it just a tiny CRM System or a full blown SAP clone, they all have those "Whitepapers" that first look somewhat scientific or informative. Like "the top8 common pitfalls when introducing an ERP system". 7 of them read logically and were what i expected, the 8th was "dont get your IT involved".
Yeah sure, IT doesnt understand economical processes, fair enough, but not getting it involved at all sounds like selfdefense. A further look showed me that this particular vendor has a web-based solution but doesnt provide any further informations (srsly, the website is starved of actual hard informations). The screenshots let the software look a bit oldschool but what really threw red flags for me was the sentence "we are ready for Win10, we did significant adjustment to perform excellent with Windows 10"
So, either they have some system interwoven stuff (so why bother with Webbase then?) or its just another marketing bullshit sentence.
Either way, i found it to be really hard to get ANY reliable information about this particular topic which adds to the overall world experience of missinformations and the all-being "fakenews". But for many things one can usually filter through a lot of different informations that can be pieced together, with this..its all outright propaganda camouflaged as "useful information", some even try to let it look scientific. In the end its all biased..
ultimativly, this rant is about all the people that write those missleading whitepapers, fill the world with biased informations and make the whole planet a worse place.2 -
Every developer thrives to be the best. But, it's not only the skills, hard work or knowing infinite languages makes you the best. It only makes you the good.
Along with skills, hard work & the languages, the best one needs to have those instincts about the possible solutions to a problem and ability to decide and implement the most efficient solution cleanly in least amount of time.
I'm thriving to be the best. Are you?3 -
Fuck me man this is the second time this week! Planning on going fully to Ubuntu mint.... But I'm not sure if that's the best solution for me
Need a good distro for web development
(php, mysql, Javascript) any other recommendations or should I stick to mint?13 -
Sometimes I find that when I'm stuck on a problem the best thing to do is work on anything except the problem for a bit. 90% of the time a solution will come to me if I just stop focusing on the problem.
-
emacs, git and a decent shell like bash with at least gnutools
emacs, because I was searching for the right editor for years
- multi-platform
- extensible
- ready to type (no fucking mode change for typing like vim)
- programming functions like auto indenting, syntax highlight, auto complete, etc.)
- multiple windows in any arrangement
Additionally
- it is completely programmable to do anything you want
- you can find a solution to most common development needs on the web
git, because
- it is usable from small personal projects to heavy duty development
- fast branching and checking out, switching between different workpaths within seconds
- basic version control offline, you only need to be online for remote consolidation
- you don't have to think much about structure from the beginning, if in doubt just commit and your work is saved, then arrange the result when you're ready
sh/bash-like shell with gnutools, because
- simple tools do their job and try not to be smarter than the user
- tools can be combined in any possible and impossible variants
- powerfull scripting (although sh-syntax is often annyoing)
- open as many shells as needed, no single-instance problem as with some GUI-tools
- extensible with gazillions of other tools
And best of all, all these tools are available on all widely used desktop OS. -
just yesterday, commiting a pile'o'shit code which u know is pile'o'shit but you had to do it like that because correct non-hacky solution wouldn't meet non-negotiable, client-critical deadline, and getting back a code review criticising precisely all the points which you are aware of and want to kill yourself for but you had no other option under the circumstances.
p. s. still under probation because it's a new job, and the review ends "no time right now but we need to talk at the end of next week"
p. p. s. second best job i ever had. week of fear of losing it commences.1 -
So I've been trying to use bootstrap alerts after deleting a category item in my cms project.
The problem is that I send params via get request and after sending a query to mysql it's best to refresh the page using header to both update the new changes but also prevent the params from staying in the url.
Unfortunately, after refreshing, my alerts don't run because the context of deleting a category is over at that point. I'm sure I'll find a solution eventually, but it's causing headaches and it's a good time waster xD1 -
Once I helped one of my friends writing a coding project for an interview for him.
We worked out a solution in C++. I showed him all the class hierarchies, how the flow worked and so on.
The day after he told me he re-wrote it in C# as he was more confident with it. Fair enough.
He changed most of the names using camel + underscore notation, sometimes starting with a capital letter, sometimes not!
But the best (or, rather, worst) was to convert the class hierarchy in a big class with all stuff in it, called "CMother". That got me. This class had a couple of static methods that took a lot (if not all) inputs that somehow coincided with the member variables of another class and did some work with them (like a constructor of that class would do).
Needless to say, he didn't got the job -
Oh here's a good one. When the managers realised one of our apps is a giant hunk of crap that wasnt thought through at all and was lazily thrown together, and their solution is "meh let's just rewrite it in Swift on our new platform. And those other guys can maintain the old one and continue to do hotfixes for it until we are done".
I've been telling them for the past year that its the worst codebase I have ever seen and the lack of tests is disgusting and not something we should dare to release to paying customers (especially when those customers work in healthcare!!!). The best part was when one of them promised we would all be working on the new shiny platform by Christmas. That was last year. And I'm currently the poor bugger doing the legacy maintenance and in the process of trying to get moved to a new project. So much for managers promises amirite... -
From the abandoned university my first dev project came from the course of programming 1(C as language).
I had to implement a robot that moves inside any matrix like map following both specified rules and random moves, and had to reach sooner or later the exit place of the room.
At first I was overwhelmed by the task at hand, then I had to calm myself and start hacking around to get any idea on how to even understand what's required to get to that point.
It obsessed me for the whole first 2 weeks, but the progress was quiet steady.
Then I hit a fundamental problem of state and movement of the robot... And, as always, the best thing to do at this point is to simply detach your attention from the issue|project.
In the same day my mind asynchronously bursted a solution to my problem, and after some time I came back to the project and accomplished it with 100% of the requirements met 😁
This is what it looked like in the console(minified here):
3333333
3000003
3000003
3003003
3003003
4003023
3333333
Guess which is which 😉2 -
Fuck Windows. I just checked settings hoping to see the Creators update but noooo it's been failing to install a minor update for weeks now. And the best part is that the only solution might wind up being a clean reinstall. I need to be sleeping right now but I can't go to school in the morning without my laptop either so I'm fucked. I was already too deep in the recovery process by bedtime to back out. Fuck.1
-
!dev
There are no right answers in parenting, but there are sure as hell wrong ones and if the fucking backfire effect is too much to keep you from realizing that half of your stupid fucking decisions are delusional at best then you should probably start rethinking some things. I fucking hate dealing with other people fucking up and being stupid and I know I'm going to have to keep dealing with it in one form or another but god why I'm so done with this I just fucking don't want to deal with anyone anymore I don't want to deal with myself anymore
I dunno I don't have anyone to rant to so I can't like be specific here because it's public af but you know typing this makes me feel a little better but I still just don't want to deal with this shit anymore I don't even know what I do want to do there's like nothing the positive feedback is going away and I don't know what to fucking do with myself and I don't know how to change anything I can't fucking fix anything I mean I can fix my shitty code but I'm never getting anywhere with that and whenever I want to fix anything that's actually important I just fuck up regardless of how hard I try I just don't want to fucking try anymore I don't know if I'll actually hit post but I have to put this somewhere so probably but ugh I don't even fucking ugh literally all of my problems are so fucking dumb and small and elementary but I CAN'T FUCKING DO ANYTHING I keep ranting about these fucked up people I have to deal with and yeah they fucking suck and sometimes I wish they didn't exist but I know I'm just as if not more of an idiot and everyone would probably be better off if I didn't exist but wait no that would have happened but you guys don't get to know about that because it's specific and putting that here would fuck shit up but someone else could so that so much better and I don't know everyone who interacts with me is just hurting themselves like fuck why do some friends like blades better than me maybe because I'm even less caring and even more damaging than a stupid fucking inanimate sharp piece of metal god fucking ugh okay I can't focus on anything why is this even okay side rant why are atheists so fucking hated like yes maybe some can't understand their motives for like doing things but nobody can really understand each other's like religious people all use god or gods in their own way why do you have to think of people who have zero gods as opposed to your nonzero as less human than you there's so much wrong with that okay that side rant is over but this whole thing is a side rant so cool fuck my life lol uuh I don't know I don't want to stop typing I don't know why though I guess I just actually I have no fucking idea I'm just here doing this I should be like fucking asleep I'm passing the fuck out after this ugh okay okay okay okay okay okay okay umm I really want to quote a certain person that I really hate right now and dissect them and prove every single fucking stupid argument they make wrong but I feel like that would not be good since this is so public but I swear I hate this and you know what if you're thinking that yes I AM A FUCKING WHINY BITCH DEAL WITH IT I'M WHINING YOU DENSE FUCKER YOU DON'T HAVE TO POINT IT OUT AND FEEL SMUG IT'S BETTER TO VENT HERE THAN A LOT OF OTHER WAYS SO JUST SHUT THE FUCK UP OKAY ACTUALLY FUCK IT CALL ME OUT ON IT I NEED SOMETHING TO TAKE THIS OUT ON GOD AAAAAAH okay uuh yeah that's fun I'm a fuck up okay okay so you ask "how can you be a fuck up you're so young her der" okay being young generally is a disadvantage because you haven't had opportunity but boy have I and I sure fucked every single one of those up so yeah fun stuff you know woo haha mmkay I wish I had friends online this late because then I could like rant to a person and shit I mean this community is people but not people I know and it's not really back and forth as much and ugh okay right uuh yeah good um ugh I used to be able to get this shit out by doing something I'm good at but now I'm shit at everything and I can't motivate myself and it's all just bottled up and there's so much shit and nothing works and fuck there's probably a simple solution to everything I'm facing but I'm such a dense piece of shit that I can't find any of those stupid fucking ugh okay now I'm looking at my stupid hands typing ugh I hate the things right back up here uuh uuh I have 500 charas left lets fucking go I don't want to stop I mean I do want to stop but like by that I mean I just want to not exist I do want to keep typing here because it's the only thing distracting me but yeah uuh right um some people were like wtf happened with your stalking thing and this isn't where I should put it but fuck it whatever some weird guy just logged on for 10 mins to take a screenshot of the time being 2:22:22 and logged off and boom the school year ended uuh yeah kay right fuck I have to end it now
Aaaah okay uuh right bye I'm really sorry if you actually read that whole thing4 -
I’m having this issue for the online marketplace I’m working on the side. It’s blockchain tech where you can purchase normal goods and services(no, not like Amazon or Fiverr, eww, this one’s more inclined with promoting organic growth for small businesses and freelancers).
I’m stuck with what solution is in the best interest of the user and the business for the long-term.
The dilemma about anonymity, online freedom and privacy is yes, it protects users from predators and attackers, but then, it’s harder for authorities to hunt down people who uses platforms for malicious intent, and also, digital footprint is helpful during litigation as evidence.
You don’t know who to trust.
-There is nothing to differentiate normal users with spammers, scammers, etc.
-There is no accountability for if they break the rules. They can easily delete and create a new account.
Platforms, communities big or small are plagued with these.
There are a lot of people out there who would rather project their insecurities on other people than to seek therapy.
Also, how platforms uses psychology tricks to make platforms addicting, it’s safe to assume that it’s bound to get toxic. Fixation on these platforms, leads to other needs being neglected or people forget to stay present.
Another thing, automated moderation is not that effective as there are still biases in data and human verification is still required. But then, human moderators get exposed to extreme violence, gore, etc that leads to poor mental health. (see Facebook got sued by moderators)
Also, I’ve had a recent experience where some unstable dev was stalking and harassing me. During that turmoil, I’ve found the many loopholes in every platform out there and how crappy their support is. Like they’ll just say, “make your account more secure”, bitch it’s your platform not providing enough security, your blocking feature means nothing coz anyone can still create accounts and message anyone.
It happened like February-August (it ended coz I quit going online and made private all my accounts). UGH I MISS ALL MY FRIENDS THO. FUCK THAT DUDE. He deserves to be in jail TBH
Lol if this product booms, now u know the back story lololol -
I've been programming for 15 years now or more if I count my years I programmed as a hobby. I'm mostly self learned. I'm working in an environment of a few developers and at least the same amount of other people (managers, sales, etc). We are creating Magento stores for middle sized businesses. The dev team is pretty good, I think.
But I'm struggling with management a lot. They are deciding on issues without asking us or even if I was asked about something and the answer was not what they expect, they ask the next developer below me. They do this all the way to Junior. A small example would be "lets create a testing site outside of deployment process on the server". Now if I do this, that site will never be updated and pose a security risk on the server for eternity because they would forget about it in a week. Adding it to our deployment process would take the same time and the testing site would benefit from security patches, quick deployment without logging in to the server, etc. Then the manager just disappears after hearing this from me. On slack, I get a question in 30 minutes from a remote developer about how to create an SSH user for a new site outside of deployment. I tell him the same. Then the junior gets called upstairs and ending up doing the job: no deployment, just plain SSH (SFTP) and manually creating the database. I end up doing it but He is "learning" how to do it.
An other example would be a day I was asked what is my opinion about Wordpress. We don't have any experience with Wordpress, I worked with Drupal before and when I look at a Wordpress codebase, I'm getting brain damage. They said Ok. The next day, comes the announcement that the boss decided to use Wordpress for our new agency website. For his own health and safety, I took the day off. At the end, the manager ended up hiring an indian developer who did a moderately fair job. No HiDPI sprites, no fancy SASS, just plain old CSS and a simple template. Lightyears worse than the site it was about to replace. But it did replace the old site, so now I have to look at it and identify myself part of the team. Best thing? We are now offering Wordpress development.
An other example is "lets do a quick order grid". This meant to be a table where the customer can enter SKU and quantity and they can theoretically order faster if they know the SKU already. It's a B2B solution. No one uses it. We have it for 2 sites now and in analytics, we have 5 page hits within 3 years on a site that's receiving 1000 users daily... Mostly our testing and the client looked at it. And no orders. I mean none, 0. I presented a well formatted study with screenshots from Analytics when I saw a proposal to a client to do this again. Guess what happened? Someone else from the team got the job to implement it. Happy client? No. They are questioning why no one is using it.
What would you do as a senior developer?
- Just serve notice and quit
- Try to talk to the boss (I don't see how it would work)
- Just don't give a shit1 -
Always estimating for the best possible, quality solution. I refuse to write anything less than perfect. Also I estimate the time based on how I feel that day lol.7
-
Best boss ?
Well, on Friday we learned our business was shutting down, bankruptcy.
Other new recruits have had a 10 days notice. My boss had me a 30 days notice instead, and have been fighting day and night since then to find a new investor to buy our solution and hire the team with it, comforting me that I will be part of that team.
Feelsgood to have a boss having your back :-)
(see previous rants for more)3 -
!rant(maybe)
So after taking a long weekend and applying to some different companies, doing some cultural fit and technical interviews, I thought to sit down and take a different look at my situation (with the help of my partner, of course, bless her patient soul).
* My work output isn't bad; all things considered, it's the people I work for who are doing a shitty job. If my project fails, I have to remind myself it's not my fault or my team's because we're doing all we can to the best of our abilities. I mean, it's not our fault we're being mismanaged.
* The best way I can effect change is if I am in a position to do so. Instead of looking outside, I should be challenging my way up - and if no opportunities are there, then I have to make them myself.
* This is still a year of uncertainty - starting fresh isn't going to be easy. In contrast, I've already built a rep in my current company - why throw it away because I work for sucky people?
Looking at my previous rants, they were definitely coming from a place of frustration; but as the saying goes, if I'm not part of the solution then I'm part of the problem. I'm gonna see how I can fix that then without clamboring for an escape hatch.
Yes, it was a very insightful Valentine's dinner conversation.1 -
Best experience? My homie @lordbarnhill and I stumbled onto the solution for installing OpenSocial #Drupal8 properly on Pantheon hosting.
Worst experience? Creating a website for a radiology group only to get fired with 3 days left until launch. The "new" developer turned out to be their IT guy in house took 2 months to launch. The experience up to the point of getting fired was excruciatingly detailed and filled with ope creep. -
Frustrating feature/bug of SO is when you don't have enough rep to leave comments or have your vote truly counted, and the best answer is the bottom comment, and you have absolutely no way to thank the person! @Adiii no idea if you are on here but thanks so much for your simple and elegant nodejs solution to checking for and creating directories.1
-
Because of cache split brain issue I have to invalidate cache every 5min. I've said to lead dev about this hack and we both agree to solve it asap.
This was 3 months ago...
Temporary fix becomes production solution. And it only took me 10min to add cron entry to every prod srv.
So productive!
Btw you should see users faces when page referesh changes page completely because of load balancing xD)1 -
Junior Dev about 18months in my current job and I've got a problem
Started to feel not wanting to code at work, despite working on a greenfield project thats critical and using new tech. I get a little defensive about PR's over stupid small things (PR was once rejected due to auto indentation "not to standard").
Talked with boss (who I get on well with and like) and thinks my problem is I've lost confidence coding. Trys to get more senior Dev to on side to help me out more.
Same senior Dev is really close with other junior on my team - pair on alot of stuff all the time, have lunch and spend free time together, and will work way past working hours just to try and finish something that day (even though it's not due that day).
(Probs working ~60h weeks, where as I'm ~42h and contracted for 37h. I'll work on if I need to but tries to have balance)
Senior and other junior tend to ignore tickets on the board, do the work and then when I pick it up they say "I did that last night". No docs, no PR for me to ask about how it was done (as they merged it themselves). (They have previously completely refactored my branch in the past overnight then not told me atall)
I'm not saying its favouritism here, but I'm not happy with the situation. I feel I can't ask questions as they are always together or they discuss the problem themselves and just give me the answer (not really acknowledging my points). I dont tend to ask for help from this senior Dev now as I don't feel it's worthwhile learning wise for me.
Other people in the team are great but working on other aspects so not a direct one-to-one alignment (others are DB Dev & principal senior dev)
Furthermore I'm wanting to possibly work on full stack web or more architecture stuff, both which are not in my current teams remit (backend up to API).
So - what do I do? Try and remedy the situation in the current team as best as or look for a new teams as cut my losses.
I'm torn between the 2 and I'm unsure how to get out this rut. I feel I need to find a solution to this soon though
(Sorry for the long rant folks)4 -
Best Linux distro for NodeJS back end projects? Maybe I have to work with docker or VMs. I currently have Ubuntu Mate but I want to change. I have 8Gb of RAM and performance is what I need.
2nd Question with low priority: is anyone able to use office 365 without the online solution in any Linux distro?5 -
!rant very happy to see a development at my uni towards having programming(+related courses) being more and more examined throughout the course through assignments and seminars where you have to explain what you did and why. I think this is a much more suitable solution for some courses best done with practise than having a paper based exam.3
-
TLDR: Read the post.
Part of me watches the day fly by as I work through the various stories and issues my company has as we walk through the various phases and clean up of their own stupidity of outsourcing. I guess it would be unfair to say “stupidity” It was really a money thing. Excuses aside, the alcohol today tastes amazing as I work through the issues, nothing is ever the same, nothing is ever redundant or boring. There are times where you want to pull your hair out, jump off a building and question why the hell any one would write code, specifically Laravel this way.
I watch the internet from now and then and see the cry babies whine and complain about GitHub and Microsoft jumping into bed and their favourite, and mine too, editor falling into Microsoft’s hands.
It’s disgusting and completely childish, but I digress. The last time I was here the alcoholism and the loneliness had begun pushing me towards the Nicotine and suicide. I have managed to obviously push through and watch the money come in only for adult life to take it away, I guess that’s life. Complaining about it will do nothing other then show others how much control you lack in your own life. You quiet your complaints and bury them deep inside your mind where they fester and stir and become drowned in alcohol.
Dating is even harder, especially when you work from home, so much so that I have completely given up there, any semblance of social life is buried in Final Fantasy 14 online, where pixels and text other people write have become my friend, at least for a moment or two before the work takes over and I sit in a room blaring music and watching the code I write, appear on screen like some savant who has high functioning autism but can create amazing works of art. I don’t think I am autistic though.
The truth is I don’t mind my job, I love the money and the freedom as I stated before.
Code for me is like a seed of anger that starts deep in my core, festering, eating away at me, killing me slowly and branding me a fool. The problem is the best feeling, when there is a problem I can solve it with code, when there is a problem that cannot be solved by code I take solace in the problems that can be. I don’t like people, I hate offices and I despise dealing with my own personal issues, I would rather drink and vape until the nicotine and the alcohol has made me sufficiently numb.
Code is a place I can escape, a place I have control, a place where I don’t feel like blowing my brains out at the stupidity of other people. Have I mentioned that I hate people?
The internet is full of idiots, people ranting and raving about this and that and how it affects them oh so much, when they don’t even let their own code, there own programming problems, and in most cases shitty solutions, affect them. Look at this GitHub thing, the idiots are running around with their heads cut off, waiting for the world to end or in most cases acting like it has. Companies get bought, bill get paid, people leave each other – Shut the fuck up and deal with it.
I guess if you look back at what I have written you could say the same thing to me, boo-fucking-hoo working from home sucks sometimes, grow up and deal with it like an adult. Fair enough, I’ll take my lumps. Excuse me as I continue to drink this post away and watch the downvotes come in. I guess honesty comes with a double edge sword.
And yes I would rather use alcohol as a solution then deal with the issues.16 -
I'm starting with native mobile development to create an app with a lot of potential.
Since I didn't know a lot about this field (being a full stack web developer) I started doing some research about what technologies I should choose.
The app, having the need to be cross platform, I needed a cross platform toolkit. Although the app could make a move on to truly native code (Swift + Java), it would take a long time; hence I would require a faster short term solution.
The best option was Xamarin (for native code). However, due to certain app requirements, I would have to write a lot of platform specific code; defeating Xamarin's purpose.
The next option was a hybrid mobile app. Ionic2 was the best option here but I don't like ng-2.
In the end I came upon the realisation that a web-app was the only true cross-platform solution.
As I delved deeper into mobile app development, I found out that the webstack lacked a lot. My conclusion was, that for a truly great (cross platform) experience, we need to improve the web domain.
HTML elements can become better (more XAML like). A native templating API, to forgo the need for libraries like ReactJS or VueJS.
Better layout models. Flexbox is good but can improve. CSS should be more like Sass/stylus.
And lastly we need a better way to make our web app dynamic. JavaScript is fine, but I like the way Swift/Xamarin work. It makes things more formal.
NOTE: These are just my opinions and I'm probably wrong in many places so forgive me. -
Hi there!
I've been worrying about the following problem for months now and I don't find any solution. Maybe anybody of you can lead me the way.
We are developing a software suite which consists of a number of desktop applications:
* 12 applications written in C++; all over 20 years old; further development by 5 or 6 guys (one man armys) - mainly bugfixing, changes of law implementations, small features
* 2 applications we are currently writing in C#; completely new developments of existing C++ applications; scrum teams with at least 5 guys; this is, where we put our focus in
These applications (C++ and C#) are sharing some core assemblies and are interacting with each other. So they are not independent.
We organize them in a mono repository in one huge solution, which consists currently of about 500 projects.
Advantages:
* With all projects in one solution and through project references, Visual Studio takes care of the right build order
* Code navigation is superb - every single line of code is accessible - this makes refactoring easy
* Every developer can map the branch and build the whole suite locally
* Debugging on the local machine is easy
* DevOps pipeline is straight forward - it just have to build a single solution
Disadvantages:
* The huge solution is extremely slow.
* If you want to build the solution or you want to debug (which does essentially the same as a pre step) Visual Studio is building a lot of projects, although they haven't been changed. Their detection is buggy. So sometimes you wait 2 minutes until it starts the app. That slows us down a lot.
* Full builds need about an hour, because its building the same projects (even if they haven't been changed) over and over again (with ready made nuget packages this could be improved a lot I think)
* If a core team member changes some core apis, he is changing the calling code too, although he doesn't know the calling code, because another team has written it. I don't think, that's best practice and it doesn't scale.
* Often, a C# developer has to mess around with C++ building problems, because the C++ projects are in the same solution
* It gets more and more confusing and frustrating, because there is no clear organizational seperation between apps and nobody can't just focus on his app alone.
Idea:
I was thinking about putting the whole framework and core projects in a new solution (around 100 projects). Then we could take all old C++ projects and put them also in a new solution (around 200 projects). This would leave the newer projects (new applications - C#) in the existing solution.
This should speed up things, and would be a first step to better seperation, BUT:
How should the integration process look like?
Scenario: Core team is changing an API in our framework
Current process: Because all projects are in the same solution, they change the calling code too. So it's immediately integrated and the app developers just have to do "get latest".
New process (?): Core team is providing the changes through a nuget package (new version). So does every developer now has to keep track of if there is a new package version and if yes, do the integration? And how can we coordinate the different teams, so they are upgrading all at the same time? Because we ship our applications as a suite, all apps has to use the same versions. Or should we automate the integration process? Is there a best practice?
I have to add, that our core team is making changes very frequently, so the integration process will have to happen often.
Any ideas/feedback/inspiration?
Thank you so much in advance!4 -
I don't often have reasons to rant, but today is the one.
We had a deadline to finish a project, because today people are being trained on it. I've been working my ass off on it for a year now.
I "finished" about 2 weeks ago, meaning QA could start for real 2 weeks ago. As you can imagine for a project this long, there was bugs. Lots of them.
We did our best to fix most of them, or find work-arounds we could use during the demo.
Let's just say it isn't going great so far. We have several known bugs, which at some point may crash the app, a very low confidence in the fact that it's going to work well.
Oh and obviously the client is one who already use heavily the solution. Today we figured we never tested on a device with 0% disk space. Files are cut partway because of that, and obviously things crash.
I have a feeling there will be yelling sometime soon.
Right now I'm enjoying the calm before the storm, with coffee in hand.
Why do people still continue to promise dates to clients, after me telling them for 5 years not to do that?
We are a 2 devs team, with 11 apps on 2 platforms, 2 back-ends (one is legacy) and obviously our marketing site, which doubles up as e-commerce. We just can't promise anything, because any emergency reduce our development bandwith for new features either to 50% or 0%. There are so much known bugs it's not funny anymore, and we don't even have time to solve those.
To add insult to injury, at the beginning of the month, the SaaS provider for our legacy back-end (which have not been maintained for 2 years now) decided we had to update to PHP7.1 before 1st October. If we don't do anything, on monday this thing is broken. I hate that thing, and I hate having to maintain it even though I was promised I wouldn't have to ever have anything to do on it.
Monday will be "fun"...2 -
Don't you just hate it when there seems to be nothing but in some ways lacking solutions to a definite task in your capability arsenal? Or rather, I don't really know how I should feel about it... I've been developing this solution to receive a 3DES encrypted Azure Service Bus message, decrypting it and chewing the output XML down so as to be digestible to the PHP application whose API the message gets delegated to... but there just seems to be no perfect solution: subscribing to the event topic straight from the target app just... doesn't seem to work properly, a Python implementation.... well, let's just leave it at that... a Node.js implementation would require TS and completely rewriting a proprietary library with 100+ complex types - also, there's some hiccups with both the subscription and the decryption...
I started with an F# implementation (after deeming the PHP one flawed), and it seems it's still the best. But goddamn it I had problems with it on the dotnet core side of thing (decryption output incorrect), so I had to switch to dotnet framework... Now finally everything crucial is peachy, but I can't seem to be able to implement a working serialized domain model pipeline to validate the decrypted message and convert it to something easier to digest for the target application (so that I could use the existing API endpoint instead of writing a new one / heavily modifying the existing implementation and fear breaking something in the process...). I probably could do it in C#, I don't know, but for the love of Linus I'm not going to do it if I can avoid it, when implementing the same functionality I have now without the Dto and Domain type modules would take 3x LoC than the current F# implementation incl. the currently unused modules!
And then there's the problem of deployment... I have no idea what's the best way to deploy a dotnet framework module to an app completely based on MAMP running on a mostly 10yo AWS cloud solution. If I implemented a PHP or Node.js solution, it'd be a piece of cake, but... Phew, I don't know. This is both frustrating, overwhelming and exciting at the same time.7 -
Man i realy need to get of my windows host.
My productivity takes a nosedive whenever im on windows idk why.
I'd love to use linux fully but my fav game Overwatch has shit performance running on linux.
So the best solution would be to pass through my gpu to a windows vm for gaming.
But that would require a new gpu for the host system as the ryzen 7 1700 does not have a gpu.
I dont have any experience with passing thtough gpus. But could i make 2 vms that acces the same gpu, ofc not at the same time. So that i could have a gaming vm and maybe use another linux vm if i wanted to do something which profits off gpu acceleration.11 -
I've never been more impressed than when I discovered Linux. It's a pretty classical choice but I can't say another. It's my favorite because for every need you have, you get a solution to make it. Right now, I'm learning how xcb works to make a tool for DE like Rofi.
Most of all, Linux philosophy implies that the most popular (and almost always best) tools used on Linux are all open source. So now, I can learn xcb just by looking at the codes of other DE, I'm really in love with Linux -
Let's do a story mapping session! Ok cool. PO asks the team: so guys what do you think? *silence*... *more silence*.... PO: come on guys, please respond. *silence*.... Then someone finally responds.
I'm starting to hate this big time. It's almost always like that, no matter the type of session (story mapping, refinement) And there's someone in the team that thinks he always knows best, so if ever someone speaks up, it will always be challenged and lead to useless discussions. He always wants the perfect solution. A good solution is good enough, it doesn't have to be perfect. PO is happy with a good solution (good = maintainable, scoring at least x on our code quality tooling), so why the fuck would you want to go for the 'perfect' solution, which may score just slightly higher in regard to quality, cost much more to develop and people have a hard time maintaining it due to the high level of abstraction? He's always refactoring stuff because it's not future proof. Well, why completely reimplement parts that have been working properly for 2 years and have a very very small chance of needing a change, which then still only needs to be done in just 1 place?
And you know what? All these fancy structures, patterns etc are in there but will their flexibility ever really be used? In my 20 years experience haven't seen such flexibility being really used. Some exceptions of course.
Once it's built, it will keep running, yes, changes will need to be made, but in most cases they never touch all these expensive fancy structured components. Just because most changes are in content or small changes in functionality.1 -
What does everyone use to sync/upload/download files to servers? (For files not relevant/necessary to git)
I've used sftp drive, ssh, filezilla but the best solution for me so far has been using torrent syncing (I.e SyncThing). Any other good contenders/suggestions?8 -
When a severe outage/screw-up happens or when an insane request comes through and the only solution is some adhoc coding... the best part of being a dev: 1. being the one they turn to in those dark times, and 2. the self confidence boost when you alone have saved the day. It's thankless but those times make up for it.
-
SQA here.
What do you even do when dev, other senior QA, your boss and management all give conflicting requirements for a big milestone planning while still ramping up?
My instinct tells me to do what my boss and dev tells me and to come up with the solution that makes the most sense.
No we don't have a product owner ffs. It's like a bizarre waterfall scheme. I have figure out this on my own and hope I made no big mistakes because the ones with the knowledge are unavailable to help. Been thrown in this shit and it's been 3 months I work here. I am honestly trying my best to filter the best out of this.4 -
floating point numbers are workarounds for infinite problems people didn’t find solution yet
if you eat a cake there is no cake, same if you grab a piece of cake, there is no 3/4 cake left there is something else yet to simplify the meaning of the world so we can communicate cause we’re all dumb fucks who can’t remember more than 20000 words we named different things as same things but in less amount, floating point numbers were a biggest step towards modern world we even don’t remember it
we use infinity everyday yet we don’t know infinite, we only partially know concept of null
you say piece of cake but piece is not measurement - piece is infinite subjective amount of something
everything that is subjective is infinite, like you say a sentence it have infinite number of meanings, you publish a photo or draw a paining there are infinite number of interpretations
you can say there is no cake but isn’t it ? you just said cake so your mind want to materialize something you already know and since you know the cake word there is a cake cause it’s infinite once created
if you think really hard and try to get that feeling, the taste of your last delicious cake you can almost feel it on your tongue cause you’re connected to every cake taste you ate
someone created cake and once people know what cake is it’s infinite in that collection, but what if no one created cake or everyone that remember how cake looks like died, everything what’s cake made of extinct ? does it exist or is it null ? that’s determinism and entropy problem we don’t understand, we don’t understand past and future cause we don’t understand infinity and null, we just replaced it with time
there is no time and you can have a couple of minutes break are best explanations of how null and infinite works in a concept of time
so if you want to change the world, find another thing that explains infinity and null and you will push our civilization forward, you don’t need to know any physics or math, you just need to observe the world and spot patterns10 -
My head is about to explode... Trying to wrap my head around the best way for integrating a suitable frontend solution with a symfony backend.
So many implications, so many opinions, so many possibilities.. A very big project, a lot of requirements, a very small team and most of the colleagues have their main focus on backend development though..
Feeling lost currently, not really sure how to approach this huge topic 😥4 -
So i tried getting some games i play on windows to work with wine and steam.
After swearing and installing all the shitty dependencies it doesnt feel any good. And worst of all i knew not all games are going to work though.
As i wanted a good and portable setup i thought alright maybe this is going to be a good use case for docker. But its a pure nightmare to get everything running fine. At the end i gave up that shit.
So dual boot is still the only way for me to be able to play games without hacks and an unreasonable amount of work.
Using gpu passthrough to kvm is a pure nightmare too. I mean what the hack, the best way to use it is to have two fcking video cards?! And yeah the integrated intel shit graphics are no option.
I mean why the fuck is it even necessary to perform dirty hacks because the most game publishers dont give a fuck about linux.
Seriously it isnt that fucking hard! And Proton is a good step for some games, but only as a temporarily solution, that only exists because of shitty game publishers.
It is horrible, its 2020 and i still cant get fully independent from windows, no matter how hard i try.
Is it that fucking hard to add builds for linux to their shitty games?!14 -
Every day is tempting to me..tempting to use some solutions i am not sure that i can handle it.
The Company i work for has an external IT Partner that does all the heavy lifting when it comes to our infrastructure, like installing servers, doing the installations and such. I mostly monitor it and do basic maintenance. Its all windows.
Recently i thought about adding a fifth Hyper V instance for an intranet webserver...based on some linux distro (probably ubuntu cause that is what i am familiar with). But i am not THAT familiar with ubuntu or any linux distro..buts its just the intranet and i already installed nginx and apache with success, what could go wrong?
today i sketched some intranet websoftware our production might find useful to collect data input from our workers (we are somewhat small so there is no big ERP software as of now). When thinking how to realize the data input i thought that maybe a basic raspberry and some cheap 1280x800 10.1 inch touch panels would be best..its very tempting, but on the other hand i am not sure i am ready for that, my experience is shallow and only based on my own RaPi that i 99,99% run headless. On the other hand it would be a very small and space safing concept..and cheap..compared to the use of Laptops (the go to company solution when computers are needed).
It also had the risk that i am the only one that could unfuck anything if things go south..it also has the advantage that i am the only one who could fix things when it goes south...
so much temptation -
Sorry, I'm very stupid and know nothing about cloud development.
My need: I have a php code I want to put in cloud and launch as a task every N minutes automatically until I decide to stop it.
What is the best solution to do it, do you know some good services that allows me to do it easily, quickly and affordably?
For ex. "Heroku" allows me to do something like that?
Thanks in advance, I would really like to learn this part of software development I never touched in my life.
P.S. It's not a service I want to put online with access for users, it's just a "script" I want to have running on a server until I'm done.5 -
Many Indiana entrepreneurs are now turning to loans to find capital to grow their businesses. The ability to obtain a business loan plays an important role in the process of expanding activities and ensuring the sustainability of the enterprise. In this regard, various financial institutions offer a wide range of loan products for small and medium-sized businesses.
To obtain a business loan in Indiana, entrepreneurs can turn to banks, credit unions, and alternative lenders. For example, you can contact https://gofundshop.com/usa/indiana/ . Banks typically offer traditional lending products such as lines of credit, long-term loans, and guarantee financing programs through the Small Business Administration. In addition, there are many credit cooperatives in Indiana that specialize in providing financial assistance to agricultural and small businesses.
However, the Indiana business lending market is not always straightforward. Many entrepreneurs are faced with the problem of lack of credit history or insufficient collateral base, which makes it difficult to obtain a loan. In such cases, turning to alternative lenders such as online lending platforms can be a solution. These lenders typically evaluate an entrepreneur's creditworthiness based on a variety of factors, including the business's financial performance, personal credit history, and the business's future growth plans.
It is important to note that Indiana has seen an increase in interest in business loans in recent years. Many entrepreneurs seek financial support to expand their business, launch new projects or upgrade equipment. In this regard, local banks and financial institutions are actively developing new lending programs, taking into account the specifics of small and medium-sized businesses in the region.
Additionally, Indiana has many business support programs that can help you obtain a business loan. For example, the Small Business Administration provides loan guarantees that allow companies with limited credit histories to access financing. There are also government support programs that provide preferential loans and subsidies for the development of small and medium-sized businesses.
Thus, the Indiana business lending market offers a wide range of opportunities for entrepreneurs. Regardless of what industry the business belongs to, company owners have the opportunity to obtain credit resources for the further development and growth of their enterprise. It is important to choose the optimal loan product and contact reliable financial partners who can offer the best lending conditions.1 -
If I had dev superpowers I would build a program to do pair programming with you. When it spots a mistake it let's you know and shows the best possible solution you should be using instead. #keepOnDreaming
-
I was away sick for a week. Come back to a chat log with messages about how the other dev team is trying to figure out a solution to a bug that they only show three services listed in the system.
Me couple of weeks ago on my second day in the project figured it out relating to a task I was doing. It's not a bug, it's a feature. It's a constant defined in the constants-file.
And the best thing: my team mate quoted me and said "Lankku figured it out last week". And it was passed down back to the team who had actually developed the whole feature and couldn't figure out why it was working so now. xD -
Can anyone recommend a tool I can use to allow my users to crop / position their profile images before they are submitted to s3?
I’m building in laravel but I’m guessing the best solution will be some JS library.
I’m really struggling with this. -
What do you think is the best software for an e-mail server running on Ubuntu 16.04 (Gotta use Ubuntu for a few different reasons). Haven’t been able to find a good solution for me to use. Needs to be able to run a few different email domains, roughly 5 domains.
Hell, any suggestions on a VPS host? I’ve been thinking of OVH. (Best bang for the buck so far that I’ve found)8 -
Hello world!
I have a question about which the best solution to send message verify to number phone in WordPress??🤔10 -
I'd like to hear opinions from experienced devs/software architects... Referencing my two previous rants, the imposter's has been strong today. And I really don't know how to feel about the possible solution I've come up with... Adding the new feature as a microservice for an otherwise monolithic application 🙄 is that a sane idea?
The thing is I need to have a subscription type event-driven mechanism and since we're listening to service bus messages from another cloud provider, I apparently can't just have a serverless function to do the job, so unless there's a better option, I need a microservice with the subscription that can then invoke a serverless function to actually do what needs to be done. That's my idea, but I'm far from sure this is the best way...1 -
I am stuck!!
I don;t even how to write :(
I mean does anyone have shit talk about android studio ? Anyone?
I have to work with android studio or so but I am feeling very lazy to get it installed and setup. I am working with expo and I was so happy that simple React native is working!! But now for few libraries I have to installed android studio They wont work simply with expo go :(
I am thinking will it be worth to go through with these installation and setup.. :(
Thank god!! this is my own work so I can search and do my best in research avoiding installation. But I feel like if I have to work with mobile apps sooner or later I have to install proper setup, Wish there is a way I am searching for solution since morning and no luck yet :)
Will search in night too2 -
reading books, documentations and specifications within minutes and remember anything in it, so i can directly start on getting to work and know which solution might be the best without spending days in specs and doc. :)
-
I'm just about throwing my new Dell laptop (Precision 5520) out of the window!
When I disconnect laptop from the thunderbolt dock (TB16), the laptop screen stays off until it's connected back to the dock. No matter if I put the laptop to sleep before disconnecting. Everything works just fine if I shutdown the machine and restart it without connecting to dock.
The best part is that the computer seems to be running normally, the screen is just black.
Anyone got a solution in mind? I'm running Windows 10 and I have installed all the possible updates.1 -
Need advice about protecting ddos via iptables and whitelisting. Currently I launched my gameserver and am fighting against a massive attack of botnets. Problem was solved by closing all ports on my gameserver linux machine and shipping game.exe with injected c++ socket client. So basically only gamers who launch my game exe are being added to firewall iptables via the socket client that is provided in the game exe. If some ddosers still manage to get inside and ddos then my protection is good enough to handle attacks from whitelisted ips from inside. Now I have another problem. Lots of players have problems and for some reason shipped c++ client fails to connect to my socketserver. Currently my solution was to provide support in all contact channels (facebook,skype,email) and add those peoples ips to whitelist manually. My best solution would be to make a button in website which you can click and your ip is whitelisted auromatically. However if it will be so easy then botnets can whitelist themselves as well. Can you advice me how I could handle whitelisting my players through web or some other exe in a way that it cant be replicated by botnets?1
-
Once upon a time in the exciting world of web development, there was a talented yet somewhat clumsy web developer named Emily. Emily had a natural flair for coding and a deep passion for creating innovative websites. But, alas, there was a small caveat—Emily also had a knack for occasional mishaps.
One sunny morning, Emily arrived at the office feeling refreshed and ready to tackle a brand new project. The task at hand involved making some updates to a live website's database. Now, databases were like the brains of websites, storing all the precious information that kept them running smoothly. It was a delicate dance of tables, rows, and columns that demanded utmost care.
Determined to work efficiently, Emily delved headfirst into the project, fueled by a potent blend of coffee and enthusiasm. Fingers danced across the keyboard as lines of code flowed onto the screen like a digital symphony. Everything seemed to be going splendidly until...
Click
With an absentminded flick of the wrist, Emily unintentionally triggered a command that sent shivers down the spines of seasoned developers everywhere: DROP DATABASE production;.
A heavy silence fell over the office as the gravity of the situation dawned upon Emily. In the blink of an eye, the production database, containing all the valuable data of the live website, had been deleted. Panic began to bubble up, but instead of succumbing to despair, Emily's face contorted into a peculiar mix of terror and determination.
"Code red! Database emergency!" Emily exclaimed, wildly waving their arms as colleagues rushed to the scene. The office quickly transformed into a bustling hive of activity, with developers scrambling to find a solution.
Sarah, the leader of the IT team and a cool-headed veteran, stepped forward. She observed the chaos and immediately grasped the severity of the situation. A wry smile tugged at the corners of her mouth.
"Alright, folks, let's turn this catastrophe into a triumph!" Sarah declared, rallying the team around Emily. They formed a circle, with Emily now sporting an eye-catching pink cowboy hat—an eccentric colleague's lucky charm.
With newfound confidence akin to that of a comedic hero, Emily embraced their role and began spouting jokes, puns, and amusing anecdotes. Tension in the room slowly dissipated as the team realized that panicking wouldn't fix the issue.
Meanwhile, Sarah sprang into action, devising a plan to recover the lost database. They set up backup systems, executed data retrieval scripts, and even delved into the realm of advanced programming techniques that could be described as a hint of magic. The team worked tirelessly, fueled by both caffeine and the contagious laughter that filled the air.
As the hours ticked by, the team managed to reconstruct the production database, salvaging nearly all of the lost data. It was a small victory, but a victory nonetheless. And in the end, the mishap transformed into a wellspring of inside jokes and memes that permeated the office.
From that day forward, Emily became known as the "Database Destroyer," a moniker forever etched into the annals of office lore. Yet, what could have been a disastrous event instead became a moment of unity and resilience. The incident served as a reminder that mistakes are inevitable and that the best way to tackle them is with humor and teamwork.
And so, armed with a touch of silliness and an abundance of determination, Emily continued their journey in web development, spreading laughter and code throughout the digital realm.2 -
Hello everyone
Wanna ask what is best solution to self host your own mail server ? It's for my graduation project4 -
(tldr: are foriegn keys good/bad? Can you give a simple example of a situation where foriegn keys were the only and/or best solution?)
i have been recently trying to make some apps and their databases , so i decided to give a deeper look to sql and its queries.
I am a little confused and wanted to know more about foreign keys , joins and this particular db designing technique i use.
Can anyone explain me about them in a simpler way?
Firstly i wanted to show you this not much unheard tecnique of making relations that i find very useful( i guess its called toxi technique) :
In this , we use an extra table for joining 2 tables . For eg, if we have a table of questions and we have a table of tags then we should also have a table of relation called relation which will be mapping the the tags with questions through their primary IDs this way we can search all the questions by using tag name and we can also show multiple tags for a question just like stackoverflow does.
Now am not sure which could be a possibile situation when i need a foriegn key. In this particular example, both questions and tags are joined via what i say as "soft link" and this makes it very scalable and both easy to add both questions and new tags.
From what i learned about foriegn keys, it marks a mandatory one directional relation between 2 tables (or as i say "hard a to b" link)
Firstly i don't understand how i could use foriegn key to map multiple tags with a question. Does that mean it will always going to make a 1to1 relationship between 2 tables( i have yet to understand what 11 1mant or many many relations arr, not sure if my terminology is correct)
Secondly it poses super difficulty and differences in logics for adding either a tag or question, don't you think?
Like one table (say question) is having a foreign key of tags ID then the the questions table is completely independent of tag entries.
Its insertion/updation/deletion/creation of entries doesn't affect the tags table. but for tag table we cannot modify a particular tag or delete a tag without making without causing harm to its associated question entries.
if we have to delete a particular tag then we have to delete all its associated questions with that this means this is rather a bad thing to use for making tables isn't it?
I m just so confused regarding foriegn keys , joins and this toxi approach. Maybe my example of stack overflow tag/questions is wrong wrt to foreign key. But then i would like to know an example where it is useful5 -
!dev, sort of
So, apparently my Play Store settings get reset when I restart my phone, so Google decided to update Google Keyboard to Gboard for me (and god-fucking-dammit, that shit is absolutely useless to me). I can find older .apks on websites like APKmirror for Google Kinstall but they won't install, saying that "it seems like the package is corrupt". I'm not sure exactly why this might be happening, but according to APKmirror’s FAQ it might have something to do with cryptographic signatures or that a newer version is already installed on the device. Gboard is disabled and I assume that should be enough for that, and I don't know if it would even detect it as the same app in the first place, so my best guess is that it’s got to do with the former which is why I'm turning to you guys.
Does anyone have advice for a solution? I don't have any problems getting another keyboard either if needed, but I would really like something that both has separated layouts per language, as well as a similar swipe-to-type function, since excessive tapping really aggravates my CTS. :/ Any suggestions?1 -
Our unique economics assignment help is the ultimate solution that you are looking. We are at your service so that you can get support from our stellar writers. the leading assignment help provider worldwide. We have a group of online Economics Assignment Help experts from top universities to help these students in the best possible manner.
https://economicsassignmentshelp.com/...random economics assignment help online economics assignment help economics help online economics help