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 - "well built"
-
Hi, I am a Javascript apprentice. Can you help me with my project?
- Sure! What do you need?
Oh, it’s very simple, I just want to make a static webpage that shows a clock with the real time.
- Wait, why static? Why not dynamic?
I don’t know, I guess it’ll be easier.
- Well, maybe, but that’s boring, and if that’s boring you are not going to put in time, and if you’re not going to put in time, it’s going to be harder; so it’s better to start with something harder in order to make it easier.
You know that doesn’t make sense right?
- When you learn Javascript you’ll get it.
Okay, so I want to parse this date first to make the clock be universal for all the regions.
- You’re not going to do that by yourself right? You know what they say, don’t repeat yourself!
But it’s just two lines.
- Don’t reinvent the wheel!
Literally, Javascript has a built in library for t...
- One component per file!
I’m lost.
- It happens, and you’ll get lost managing your files as well. You should use Webpack or Browserify for managing your modules.
Doesn’t Javascript include that already?
- Yes, but some people still have previous versions of ECMAScript, so it wouldn’t be compatible.
What’s ECMAScript?
- Javascript
Why is it called ECMAScript then?
- It’s called both ways. Anyways, after you install Webpack to manage your modules, you still need a module and dependency manager, such as bower, or node package manager or yarn.
What does that have to do with my page?
- So you can install AngularJS.
What’s AngularJS?
- A Javascript framework that allows you to do complex stuff easily, such as two way data binding!
Oh, that’s great, so if I modify one sentence on a part of the page, it will automatically refresh the other part of the page which is related to the first one and viceversa?
- Exactly! Except two way data binding is not recommended, since you don’t want child components to edit the parent components of your app.
Then why make two way data binding in the first place?
- It’s backed up by Google. You just don’t get it do you?
I have installed AngularJS now, but it seems I have to redefine something called a... directive?
- AngularJS is old now, you should start using Angular, aka Angular 2.
But it’s the same name... wtf! Only 3 minutes have passed since we started talking, how are they in Angular 2 already?
- You mean 3.
2.
- 3.
4?
- 5.
6?
- Exactly.
Okay, I now know Angular 6.0, and use a component based architecture using only a one way data binding, I have read and started using the Design Patterns already described to solve my problem without reinventing the wheel using libraries such as lodash and D3 for a world map visualization of my clock as well as moment to parse the dates correctly. I also used ECMAScript 6 with Babel to secure backwards compatibility.
- That’s good.
Really?
- Yes, except you didn’t concatenate your html into templates that can be under a super Javascript file which can, then, be concatenated along all your Javascript files and finally be minimized in order to reduce latency. And automate all that process using Gulp while testing every single unit of your code using Jasmine or protractor or just the Angular built in unit tester.
I did.
- But did you use TypeScript?37 -
!rant
Has anyone been paying attention to what Google's been up to? Seriously!
1) Fuchsia. An entire OS built from the ground up to replace Linux and run on thin microcontrollers that Linux would bog down — has GNU compilers & Dart support baked in.
2) Flutter. It's like React Native but with Dart and more components available. Super Alpha, but there's "Flutter Gallery" to see examples.
3) Escher. A GPU-renderer that coincidentally focuses on features that Material UI needs, used with Fuchsia. I can't find screenshots anywhere; unfortunately I tore down my Fuchsia box before trying this out. Be sure to tag me in a screenshot if you get this working!
4) Progressive Web Apps (aka Progress Web APKs). Chrome has an experimental feature to turn Web Apps into hybrid native apps. There's a whole set of documentation for converting and creating apps.
And enough about Google, Microsoft actually had a really cool announcement as well! (hush hush, it's really exciting for once, trust me)...
Qualcomm and Microsoft teamed up to run the full desktop version of Windows 10 on a Snapdragon 820. They go so far as to show off the latest version of x86 dekstop Photoshop with no modifications running with excellent performance. They've announced full support for the upcoming Snapdragon 835, which will be a beast compared to the 820! This is all done by virtualization and interop libraries/runtimes, similar to how Wine runs Windows apps on Linux (but much better compatibility and more runtime complete).
Lastly, (go easy guys, I know how much some of you love Apple) I keep hearing of Apple's top talent going to Tesla. I'm really looking forward to the Tesla Roof and Model 3. It's about time someone pushed for cheap lithium cells for the home (typical AGM just doesn't last) and made panels look attractive!
Tech is exciting, isn't it!?40 -
I absolutely HATE "web developers" who call you in to fix their FooBar'd mess, yet can't stop themselves from dictating what you should and shouldn't do, especially when they have no idea what they're doing.
So I get called in to a job improving the performance of a Magento site (and let's just say I have no love for Magento for a number of reasons) because this "developer" enabled Redis and expected everything to be lightning fast. Maybe he thought "Redis" was the name of a magical sorcerer living in the server. A master conjurer capable of weaving mystical time-altering spells to inexplicably improve the performance. Who knows?
This guy claims he spent "months" trying to figure out why the website couldn't load faster than 7 seconds at best, and his employer is demanding a resolution so he stops losing conversions. I usually try to avoid Magento because of all the headaches that come with it, but I figured "sure, why not?" I mean, he built the website less than a year ago, so how bad can it really be? Well...let's see how fast you all can facepalm:
1.) The website was built brand new on Magento 1.9.2.4...what? I mean, if this were built a few years back, that would be a different story, but building a fresh Magento website in 2017 in 1.x? I asked him why he did that...his answer absolutely floored me: "because PHP 5.5 was the best choice at the time for speed and performance..." What?!
2.) The ONLY optimization done on the website was Redis cache being enabled. No merged CSS/JS, no use of a CDN, no image optimization, no gzip, no expires rules. Just Redis...
3.) Now to say the website was poorly coded was an understatement. This wasn't the worst coding I've seen, but it was far from acceptable. There was no organization whatsoever. Templates and skin assets are being called from across 12 different locations on the server, making tracking down and finding a snippet to fix downright annoying.
But not only that, the home page itself had 83 custom database queries to load the products on the page. He said this was so he could load products from several different categories and custom tables to show on the page. I asked him why he didn't just call a few join queries, and he had no idea what I was talking about.
4.) Almost every image on the website was a .PNG file, 2000x2000 px and lossless. The home page alone was 22MB just from images.
There were several other issues, but those 4 should be enough to paint a good picture. The client wanted this all done in a week for less than $500. We laughed. But we agreed on the price only because of a long relationship and because they have some referrals they got us in the door with. But we told them it would get done on our time, not theirs. So I copied the website to our server as a test bed and got to work.
After numerous hours of bug fixes, recoding queries, disabling Redis and opting for higher innodb cache (more on that later), image optimization, js/css/html combining, render-unblocking and minification, lazyloading images tweaking Magento to work with PHP7, installing OpCache and setting up basic htaccess optimizations, we smash the loading time down to 1.2 seconds total, and most of that time was for external JavaScript plugins deemed "necessary". Time to First Byte went from a staggering 2.2 seconds to about 45ms. Needless to say, we kicked its ass.
So I show their developer the changes and he's stunned. He says he'll tell the hosting provider create a new server set up to migrate the optimized site over and cut over to, because taking the live website down for maintenance for even an hour or two in the middle of the night is "unacceptable".
So trying to be cool about it, I tell him I'd be happy to configure the server to the exact specifications needed. He says "we can't do that". I look at him confused. "What do you mean we 'can't'?" He tells me that even though this is a dedicated server, the provider doesn't allow any access other than a jailed shell account and cPanel access. What?! This is a company averaging 3 million+ per year in revenue. Why don't they have an IT manager overseeing everything? Apparently for them, they're too cheap for that, so they went with a "managed dedicated server", "managed" apparently meaning "you only get to use it like a shared host".
So after countless phone calls arguing with the hosting provider, they agree to make our changes. Then the client's developer starts getting nasty out of nowhere. He says my optimizations are not acceptable because I'm not using Redis cache, and now the client is threatening to walk away without paying us.
So I guess the overall message from this rant is not so much about the situation, but the developer and countless others like him that are clueless, but try to speak from a position of authority.
If we as developers don't stop challenging each other in a measuring contest and learn to let go when we need help, we can get a lot more done and prevent losing clients. </rant>14 -
I made a Trello board and listed some tasks for me and my team.
My boss comes in, I show him the trello board to show how I organized our tasks.
He liked it, so I asked him if we can use it more frequently.
He replied: this is your code, do whatever you want.
I asked: my code?
He replied: yah didn't just build this webpage? This interactive task manager.
Me in shock: hold on you think I built trello?
Boss: oh ... You didn't ? It looks like something you'd do for your "front end masterbaution".
Me: oh wow, well... If that was the case I would've made $425 million on top of my salary.
Boss: looked at me like meh ~ and walked away...7 -
Its that time of the morning again where I get nothing done and moan about the past ... thats right its practiseSafeHex's most incompetent co-worker!!!
Today I'd like to tell you the story of "i". Interesting about "I" is that he was actually a colleague of yesterdays nominee "G" (and was present at the "java interface" video call, and agreed with G!): https://devrant.com/rants/1152317/...
"I" was the spearhead of a project to end all projects in that company. It was suppose to be a cross-platform thing but ended up only working for iOS. It was actually quite similar to this: https://jasonette.com/ (so similar i'm convinced G / I were part of this but I can't find their github ID's in it).
To briefly explain the above + what they built ... this is the worst piece of shit you can imagine ... and thats a pretty strong statement looking back at the rest of this series so far!
"I" thought this would solve all of our problems of having to build similar-ish apps for multiple customers by letting us re-use more code / UI across apps. His main solution, was every developers favourite part of writing code. I mean how often do you sit back and say:
"God damn I wish more of this development revolved around passing strings back and forth. Screw autocomplete, enums and typed classes / variables, I want more code / variables inside strings in this library!"
Yes thats right, the main part of this bullshittery was putting your entire app, into JSON, into a string and downloading it over http ... what could possibly go wrong!
Some of my issues were:
- Everything was a string, meaning we had no autocomplete. Every type and property had to be remembered and spelled perfectly.
- Everything was a string so we had no way to cmd + click / ctrl + click something to see somethings definition.
- Everything was a string so any business logic methods had to be remembered, all possible overloaded versions, no hints at param types no nothing.
- There was no specific tooling for any of this, it was literally open up xcode, create a json file and start writing strings.
- We couldn't use any of the native UI builders ... cause strings!
- We couldn't use any of the native UI layout constructs and we had to use these god awful custom layout managers, with a weird CSS feel to them.
What angered me a lot was their insistence that "You can download a new app over http and it will update instantly" ... except you can't because you can't download new business logic only UI. So its a new app, but must do 100% exactly the same thing as before.
His other achievements include:
- Deciding he didn't like apple's viewController and navigationBar classes and built his own, which was great when iOS 7 was released (changed the UI to allow drawing under the status bar) and we had no access to any of apples new code or methods, meaning everything had to be re-built from scratch.
- On my first week, my manager noticed he fucked up the login error handling on the app I was taking over. He noticed this as I was about to leave for the evening. I stayed so we could call him (he was in an earlier timezone). Rather than deal with his fucked up, he convinced the manager it would be a "great learning experience" for me to do it ... and stay in late ... while he goes home early.
- He once argued with me in front of the CEO, that his frankenstein cross-platform stuff was the right choice and that my way of using apples storyboards (and well thought out code) wasn't appropriate. So I challenged him to prove it, we got 2 clients who needed similar apps, we each did it our own way. He went 8 man weeks over, I came in 2 days under and his got slated in the app store for poor performance / issues. #result.
But rather than let it die he practically sucked off the CEO to let him improve the cross platform tooling instead.
... in that office you couldn't swing a cat without hitting a retard.
Having had to spend a lot more time working with him and more closely than most of the other nominees, at a minimum "I" is on the top of my list for needing a good punch in the face. Not for being an idiot (which he is), not for ruining so much (which he did), but for just being such an arrogant bastard about it all, despite constant failure.
Will "I" make it to most incompetent? Theres some pretty stiff competition so far
Tune in later for more practiceSafeHex's most incompetent co-worker!!!7 -
Prospective client: “I have a website through which I sell music, both physical copies and downloads, but am having all kinds of issues with it”.
Me: “Like what? Tell me more.”
Client: “Go to www... I’ll go through them with you”.
So I go, and client proceeds to rattle off a list of totally random shit for the next 26 and a half minutes without even stopping for breath, telling me what he’d prefer, talking through how easy other “similar” websites are and comparing his own website to them, as well as all the things that flat out just don’t work. He ended with the line “I just paid my developer who told me it was all good, but now he’s telling me he’s too busy to work on it”.
Meanwhile I’ve had a gander at “view source” and can see it’s been “built” with Wordpress, and with a fuck ton of plugins and shit to boot... you can only imagine the sense of euphoria I’m feeling at this point.
Me: “Did you have a contract with your developer?”
Client: “Nah”.
Me: “Do you have a budget in mind, either for just making right or for ongoing development?”
Client: “Yes, but minimal”.
Me: “So what do you want from me?”
Client: “I want to know how much it’s going to cost to fix!!!!” (apparently irritated by my question).
Me: “Oooook... Is there any way I can have access to your website to investigate, or clone it so I can recreate what’s going on?”
Client: “Yes” (gives me details of how to log in to his hosting, and WP admin).
Turns out, he had over 50 active plugins for literally EVERY. SINGLE. FUCKING. PIECE of functionality on his website. Furthermore, it was pretty clear that some plugin functionality overlapped, because... well, if you don’t know how to do something, install a plugin or seven to get it done, right?
Me: “So can I ask, what exactly is your budget? Just to give me ballpark as to how best move forward?”
Client: After going into how he’s already spent a lot of money on it already, “If we could we agree on below £200?”
Me: “...what, a month?”
Client: “No! In total. To make it right. Once it’s done it’s done, surely?!?!”
*a long silence*
Client: “So... what do you think?”
Me: “Burn it. Burn it all down”.8 -
Boss: I saw that you are using {some JavaScript library}, why?
Me: you asked for this functionality and the library is very good for that
Boss: here at our company we do not use code from other people, we write everything ourselves
Me: but this library is very well built, actively developed and supported
Boss: I don't care, please rewrite this component
Suffice to say, I quit that job asap. Whoever thinks it's a good idea write so much code for a small purpose in an application when there is something available open source to use, is stupid. In most cases it's better to use something which is out there than to waste time writing a hardly stable version of it.24 -
Manager: Oh my god have you heard of libraries? I don’t even need to hire developers anymore, everything can just be done with code other people have already built for free
Dev: Well you actually cause a bit of technical debt when you use an abstrac—
Manager: EVERY TICKET SHOULD BE DONE USING LIBRARIES GOING FORWARD.
Dev: …This is going to implode…Can we at least fund some of the libraries we end up using?
Manager: WHAT? NO! Open source developers are suckers, what idiot puts code on the internet for free?? I shouldn’t be required to fund their stupidity. Let’s just take their stuff and make money with it.
Dev: *Phone rings 100th time today from recruiter*. One sec I have to take this call……It’s urgent.13 -
I think the weekly rants just exist because @dfox & @trogus got banned from stackoverflow and they still have questions.
When it comes to learning cutting edge tech... Go build already!
I found Rust intimidating.
I read the first few pages of the official book, got bored, gave up.
Few months later, decided to write a "simple" tool for generating pleasing Jetbrains IDE color schemes using Rust. I half-finished it by continuously looking up stuff, then got stuck at some ungoogleable compiler error.
Few months later I needed to build a microservice for work, and against better judgement gave Rust a try in the weekend. Ended up building an unrelated library instead, uploaded my first package to crates.io.
Got some people screaming at me that my Rust code sucked. Screamed back at them. After lots of screaming, I got some helpful PRs.
Eventually ended up building many services for work in Rust after all. With those services performing well under high load and having very few bugs, coworkers got interested. Started hiring Rust engineers, and educating interested PHP/JS devs.
Now I professionally write Rust code almost full-time.
Moral of the story:
Fuck books, use them for reference. Fuck Udemy (etc), unless you just want to 2x through it while pooping.
Learning is something you do by building a project, failing, building something else, falling again, building some more, sharing what you've made, fighting about what you've built with some entitled toxic nerds, abandoning half your projects and starting twelve new ones.
Reading code is better than reading documentation.
Listening to users of your library/product teaches you more than listening to keynote speakers at conferences.
Don't worry about failures, you don't need to deliver a working product for it to be a valuable experience.
Oh, and trying to teach OTHERS is an excellent method to discover gaps in your knowledge.
Just get your fucking hands dirty!12 -
Manager: Feature C doesn’t work
Dev: We never built feature C
Manager: Nonsense, I remember feature C clearly!
Dev: It’s still in the backlog
Manager: But we had many meetings about it
Dev: Never got put on the board
Manager: Feature C is very important!
Dev: It was never assigned to anyone
Manager: What could possibly be more important than Feature C?
Dev: All the other features you placed on the board and assigned up until now
Manager: Well I need Feature C done asap! It should be top priority!
Dev: Ok then next sprint add feature C to the board and assign it to someone
*Next planning session manager leaves feature C in backlog in favour of other tickets*
*2 days later*
Manager: What is the status of feature C?
Dev: You opted to leave it in the backlog
Manager: BUT IT SHOULD BE TOP PRIORITY!
Dev: …9 -
Working with a radio chip we selected because it had built-in encryption. Cannot make the encryption work, thus in contact with the manufacturer:
"- I cannot make the encryption work, it's like the chip doesn't want to take a key.
- which key do you use?
- does it matter?
- well yes, you can't just use any key!
- why not?
- you need to get an approved key from us.
- why is that?
- so that your competitors can't read your data!
- ...
- ...
- so the way to get working keys is to get them from you?
- of course!
- keys are 256 bits. Can we potentially use all of them?
- OF COURSE NOT!
- how many can we get from you?
- one! We reserve it from your company.
- are you telling me that all units within a company will need to have the exact same encryption key?
- yes!
- so anyone with our product could eavesdrop another same product?
- well yes, but it's all within your own products.
- ...
- ...
- that's not how encryption is supposed to work.
- but it's safe, your competitors cannot eavesdrop!
- I'm out of here."
(We finally found a satisfactory work-around, but i am still pissed at them)9 -
So I own a webshop together with a guy I met at one of my previous contract jobs. He said he had a great idea to sell product X because he can get them very cheap from another European country. Actually it is a great idea so we decided to work together on this: I do everything tech related, he does the non tech stuff.
Now we are more than 1 year in business. I setup a VPS, completely configured it, installed and setup the complete webshop, built 2 custom PrestaShop modules, built many customizations, built a completely new order proces (both front and back end), advertised quite some products, did some link building, ensured everything is in place to do proper SEO, wrote some content pages, did administration and tax declarations, rewrote a part of a PrestaShop component because it was so damn inefficient and horribly slow, and then some more. Much more.
He did customer relation management, supplier management and some ad words campaigns. Promised me many times to write the content for our product pages. This guy has an education in marketing but literally said: I'm not gonna invest in creating some marketing plan. I have no ambition in online marketing.
What?! You have the marketing knowledge and skills but refuse to use it to market our webshop and business? What the fuck is wrong with you?!
Today he says to me: 'Hey man, this is becoming an expensive hobby as we don't sell much and have lots of costs. I don't understand why I should be the one to write these content pages. Everything you did in the past 8 months can be done in less than 20 hours! You are a joke and just made it a big deal by spreading your work over so many months. I know for sure because I currently work at a company where I'm surrounded by front end devs! Are you fucking crazy?! You're a liar.'
He talks like this to me every 2 months or so while he can't even deliver the content for 1 single product in 6 fuckin' months! We even had to refund a few of our customers because Mr. client relations manager didn't respond to their e-mails within 1 fucking week!! So I asked him how could that have happened as you do the client relations and support. Well, he replied to me: 'Why didn't YOU respond to our clients? You don't log on in our back office at least once a day?!'.
Of course I do asshole. But YOU don't. He replied that I was lying just like I was lying about what I did for our business.
So, asshole, let's have a look at PrestaShops logs to see who's logging in daily. Well, you can probably guess who's IP was there in most of the entries. It wasn't his.
So, what the fuck have you been doing then?! You can't even manage to respond quickly to a client?!! We have maybe 50 clients and if we get 1 question a month by email it is already a lot. But you keep bitching, complaining and insulting me instead?!!!
Last time he literally admitted on a WhatsApp conversation that he had and still has the hope that he could just sit back and relax and watch me do ALL the work.
Well, guess what you fucking moron. That's not what we agreed upon. You fuckin' retard think you're so smart but you say EVERYTHING on WhatsApp! Including your promises to me. Thank you you fuckin' piece of dog shit because now I have hard evidence and will hand it over to my lawyer to make you pay every god damn cent for all the hours I've spent working on our business. Oh, and I'll take over the webshop and make it a success on my own because I know damn well how to get relevant traffic and thus customers.
You just go get yourself fucked in the ass without lubricant you fuckin' asshole. I have told you you shouldn't fuck with me because I take business very seriously. I even warned you when you were crossing a line again. Well, if you don't listen... You will pay for the consequences. I will be so damn happy to tell you 'I told you so' with a very very big smile on my face. That momemt WILL come, 'partner'.
Fuck you. You will be fucked. Count on that. Fucking asshole.8 -
Senior development manager in my org posted a rant in slack about how all our issues with app development are from
“Constantly moving goalposts from version to version of Xcode”
It took me a few minutes to calm myself down and not reply. So I’ll vent here to myself as a form of therapy instead.
Reality Check:
- You frequently discuss the fact that you don’t like following any of apples standards or app development guidelines. Bit rich to say the goalposts are moving when you have your back to them.
- We have a custom everything (navigation stack handler, table view like control etc). There’s nothing in these that can’t be done with the native ones. All that wasted dev time is on you guys.
- Last week a guy held a session about all the memory leaks he found in these custom libraries/controls. Again, your teams don’t know the basic fundamentals of the language or programming in general really. Not sure how that’s apples fault.
- Your “great emphasis on unit testing” has gotten us 21% coverage on iOS and an Android team recently said to us “yeah looks like the tests won’t compile. Well we haven’t touched them in like a year. Just ignore them”. Stability of the app is definitely on you and the team.
- Having half the app in react-native and half in native (split between objective-c and swift) is making nobodies life easier.
- The company forces us to use a custom built CI/CD solution that regularly runs out of memory, reports false negatives and has no specific mobile features built in. Did apple force this on us too?
- Shut the fuck up5 -
Dev manager: great news guys. We’ve built a new tool to do automated testing on apps. We’ve gotten rid of the old Appium solution we were using and built this new one.
Me: why not just use the inbuilt native stuff? Click to record works really well.
Manager: nah we thought it would be more flexible to build it ourself.
Me: ... ok ... moving on ... how does it work?
Manager: well this new .jar, you download it, pass in a config file, setup up your simulator and appium and the jar will do everything for you.
Me: ... wait you said you hate Appium? Now you’ve built a wrapper around it? And it doesn’t even set everything up, you’ve to do it all by hand?
Manager: oh we had too, would be too much effort to replace it. Don’t worry we can now write all our tests in .yaml config files instead of using Appium.
Me: so we’ve lost the ability of auto-complete and type ahead, everyone has to upskill on a new tool, it offers no new features over what’s available out of the box and we’ll have to deal with new bugs and maintenance and stuff our self ... because we need more flexibility?
Manager: oh don’t worry. The guy who built it is staying here. He’s going to deal with bug fixes and add features. He’s only one guy, but he’s really sharp, it’ll be great for us and the team.
Me: ... ... ...
*audible noise of soul breaking*
Me: ... ok thank you. I’ll look into this new tool3 -
Alright people, I'm gonna be blunt here, which is something not often seen from me. Thankfully this platform is used to it.
I am absolutely sick of people hating Windows/MacOS just because of the fucking practices of the companies. Let's take a look at a pro/con list of each OS type respectively.
Windows:
Pro - Most computers built for it
Pro - Average consumer friendly
Pro - Most games made for it
------------------------------------------
Con - Proprietary
Con - Shady info collection (disableable)
Con - Can take some work to customize
~
Linux:
Pro - Open source
Pro - Hundreds of versions/distros
Pro - Incredibly customizable on all fronts
------------------------------------------
Con - Can have limited modern hardware support
Con - The good stuff has a steep learning curve
Con - Tends to have unoptimized programs or semi-failed copies of Windows programs
~
MacOS:
Pro - Actually quite secure in general
Pro - Optimized to all hell (on Apple devices)
Pro - Usually just works
------------------------------------------
Con - Only (legally) usable on Apple devices
Con - Proprietary
Con - Locked down customization
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
See? None of them are perfect. Fucking get over it already. Maybe I want to use Windows because it works for me, and it actually does what I need it to. I can disable the spying shit through a few nice programs. Just because I work in IT doesn't mean that I HAVE to hate Windows and LOVE Linux! I mean, Linux is absolutely SPECTACULAR for all of my servers, but as a Desktop OS? Not there for me yet. Check one of my other rants: https://devrant.com/rants/928935/... and you'll see a lot of my gripes with Linux that Windows actually executes well. FUCK!38 -
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 -
RANT Incoming
Not necessarily dev related but I need to get this off my chest.
So a bit of a backstory. I had to stay late from school the other day and ended up having to take an Uber home. The ride was fine lady was nice. Everything seems to be going well and there were no signs of any payment failure.
Then yesterday, I had to stay late again. I never said that I had an outstanding balance on my account. Apparently Uber was having problems charging my Android pay account.
So I ended up being stuck at school for like 3 hours. Great!😑
So I emailed Uber when I got home. And this is when I started pulling my hair out. I don't know how many replies I had, but each time I had to tell them that I was not using a prepaid card.
This was one of my replies:
"I'm sorry, are you real? If you are, here is a quick summary of the issue. I am using ANDROID PAY with my CHASE DEBIT CARD. Not, NOT, NOT a prepaid card. I happen to know that CHASE DEBIT CARD(which is the card I use, in case you have already forgotten) works with uber because MY FATHER USES THE EXACT SAME TYPE OF CARD with uber. He uses a CHASE DEBIT CARD(again I use that same type of card as well). So by using LOGIC I am able to deduce that a CHASE DEBIT CARD is in fact compatible. AGAIN THIS IS NOT A PREPAID CARD!!! If the card is incompatible, WHY DOES THE APP ALLOW BE TO ADD IT?!?! Also in response to your last email... Because I am using Android pay, do you really think that an ANDROID would be able to use APPLE pay? Also Google wallet is DISCONTINUED! Finally, PayPal DOES NOT CONNECT TO UBER. Returns a "Server Error." So please stop wasting my time with generic help solutions. Believe me, I have already googled my issue, and nothing comes up. That is why I contacted Uber. I want my driver to be paid, and, uber had made it SO painful with unhelpful "Solutions" to problems that don't even APPLY TO MY ISSUE. No not even mention PREPAID cards in your reply or I will consider you a robot built by monkeys banging their heads on a keyboard. Uber HAS my VALID payment information, USE IT! If there is a phone number I can call, please, enlighten me"
And the response was:
"Thanks for reaching out with this.
Happy to help with this issue you are having.
After reviewing your I can see that the only payment method associated with your account is an ANDROID PAY card and it is also a prepaid card. Some cards and methods are not compatible with our billing processes and can't be used with Uber. This includes prepaid cards."
So I concluded that they are monkeys.
Then Uber banned me from logging into my account because I didn't pay.
So now it is impossible for me to pay because I can't do anything with my account.
Now they want my SSN and a bunch of other shit that I won't give them.
I told them that they were being illogical, and I got the exact same response about the prepaid bullshit.
So I sent them this photo as a goodbye.
I get my driver's licence next weekend, so I won't need Uber anymore. YAY!
Also mind grammatical errors, I talked it in and am to lazy to proofread13 -
Ranting time;
Yeah so OK this ancient legacy clusterfuck we've been maintaining and keeping alive finally broke. And even though I'm very pleased with both being right, and the well deserved right to say I TOLD YOU SO, SO MANY MANY FUCKING TIMES to all in management, it's the definition of hate to work 18 hours a day to fix the shit someone else built, that they refused us to refactor. Ah, but wait; there's more! Everyone thinks it's our fault (R&D), because historically it was our department that built the system. Ten years ago. So sales and support are now all over us, those responsible for us being in this mess are either gone or so high up in management that they refuse to take part.
Taking the fall and blame and workload, for something we warned repeatedly about, but were refused to do something with, because shiny features and new apps is what is important!
I'd understand it if the numbers were red, but they arent!! We are growing so fast it was inevitable!
I fucking hate companies who dont listen to their devs..... also companies who places ops on dev shoulders.
Yaaaargh! Also; two developers means twice as fast? No? Fuuuuuck!!!11 -
Interviewer: Do you have created any android application before?
Dev: I just built an application to increase, farming production to help farmers earn some more money. It's less profitable but makes farmers better.
Interviewer: That's so stupid. Do you know Jeff Bezos?
Dev: yes
Interviewer: we need someone like that level of visionary to make money for our company. Sorry, we don't think you can make apps that makes people do stupid things for fame.
Dev: Do you know Nicola Tesla
Interviewer : yes
Dev: Well he should have pulled the plug long ago.6 -
"JavaScript was built in a weekend"
Yeah it was ... But not the version we have today ... Twats saying well I'm sure you can build this app in a few hours 🙄4 -
Worst legacy experience...
Called in by a client who had had a pen test on their website and it showed up many, many security holes. I was tasked with coming in and implementing the required fixes.
Site turned out to be Classic ASP built on an MS Access database. Due to the nature of the client, everything had to be done on their premises (kind of ironic but there you go). So I'm on-site trying to get access to code and server. My contact was *never* at her desk to approve anything. IT staff "worked" 11am to 3pm on a long day. The code itself was shite beyond belief.
The site was full of forms with no input validation, origin validation and no SQL injection checks. Sensitive data stored in plain text in cookies. Technical errors displayed on certain pages revealing site structure and even DB table names. Server configured to allow directory listing in file stores so that the public could see/access whatever they liked without any permission or authentication checks. I swear this was written by the child of some staff member. No company would have had the balls to charge for this.
Took me about 8 weeks to make and deploy the changes to client's satisfaction. Could have done it in 2 with some support from the actual people I was suppose to be helping!! But it was their money (well, my money as they were government funded!).1 -
Well there I (the 15 year old me) sat sat the table having breakfast with my girlfriend and her parents when they asked me: "hey aren't you good with PC's? Our company needs a new website" - 4 month later I started an one month internship at their company and built their website which is still in use (which is bad)4
-
so here's a little story:
yesterday i decided to buy a shiny new gtx 1070 since my pc is getting very old, i come back from the store and i realize that my case is slightly too small to fit the card.
'No bg deal' i think to myself, i run out to buy a saw and after some work i made some space to fit the card in by sawing off some hard drive bays i was not using. I plug in the card, i wire up the pc, and it does not boot: after some asking around (i have never really built a pc before), i relaize i need more power to the card and wire a second PCIE connector. low and behold, i power of the pc and it works! Once logged into windows tho, i realize none of my HHDs are detected...
To cut a long story short, i **did not think to unplug the hard drives before i started sawing off bits of the case and the vibrations killed both of them!** i lost ~1TB of data in the process: a lot of it was games and programs, but i have yet to tally up the damage.
I am completely bamboozled by what the fuck just happened, i think i'll go hand myself in to the nearest police station for crimes against technology... or maybe a mental clinic would be best?...
PS: my system drive was spared since its an SSD, but i may as well re-install windows at this point since i lost 90% of my software11 -
Apparently, part of being a software engineer means knowing how to read minds and do other people's jobs.
While implementing a user story for marketing, we found some associated features that, according to the database, have not been used for years. We tell them this. We do the courtesy of asking, "Hey, is there anything on the site that is utilizing these features? We'd like to clean up the DB."
"We don't know."
Engineering suggests, "Ok, lets turn the feature off, then, and see if anyone complains. It's been years according to the DB."
Marketing gets angry and hostile and says, "That's not the way to do things!"
I don't vocalize, "Well, not knowing how to do your own damned job is not the way to do things."
-
Marketing asks us to integrate a third party feature to the site. We ask, "Ok, what page do you want it on, and what information do you want to collect, and what should it look like?"
"I don't know. You're engineering. You tell us."
We implement it as best we can.
Marketing says, "HEY! This isn't done right! It's missing this and this and this!"
"Did you ask us to implement that? According to the user story, it passes acceptance criteria."
Marketing says, "I thought you would just know that! I didn't know it was a separate thing. Just put it on all the pages, then. You guys really should know the site better."
Engineering gets angry and hostile
-
Marketing says, "We need this removed from the site."
Engineering replies, "We have a GUI for that. Just go to this URL and you can do it yourself."
Marketing replies, "Well, if that's a really complicated thing, can you just run a script against the DB?"
Engineering says, "If we've built a UI for you, we really shouldn't be executing SQL scripts directly against the DB."
Marketing gets angry and hostile.
-
Engineering tries asking nicely.
"Marketing, if you want us to add new stuff to the site, or change stuff, please tell us what it is and where it should go and what the customer experience should be like."
Marketing replies, "We don't know the site that well. We are leaning on you to tell us."
I do not vocalize, all while trying to keep my eyes from bulging out of my head, my face red with rage, "YOU ARE IN CHARGE OF SELLING SHIT ON A WEBSITE THAT YOU KNOW NOTHING ABOUT. YOU ARE ASKING FOR CHANGES TO SOMETHING YOU DON'T EVEN UNDERSTAND. WHAT IS WRONG WITH THIS PICTURE?"
Engineering is angry and hostile.3 -
We've built a web app and now a client wants a VPN acces to the database of web app. When asked why, they said they want to occasionally pull some data out. 😱
We said no, and this is what they wrote:
"We’ve got live VPN access to every other web database we work with – why is this different?"
Well because maybe we know that we can build you an export of whatever you want, prepare you API calls for getting data to your CRM, but hell I'm not giving you access to the production DB.5 -
I'm working on a project with a teacher to overview the project at my school to be responsible for the confidential student data...
Teacher: How are we going to authenticate the kiosk machines so people don't need a login?
Me: Well we can use a unique URL for the app and that will put an authorized cookie on the machine as well as local IP whitelisting.
Teacher: ok but can't we just put a secret key in a text file on the C drive and access it with JavaScript?
Me: well JavaScript can't access your drive it's a part of the security protocol built into chrome...
Teacher: well that seems silly! There must be a way.
Me: Nope definately not. Let's just make a fancy shortcut?
Teacher: Alright you do that for now until I find a way to access that file.
I want to quit this project so bad4 -
I went on an interview was given an algorithm to solve, solved it in 30 mins and they had allocated 20 mins for it. So I guess I suck. I build shit, I don't do algos that often so I'm obviously rusty.
interviewer: so why should we hire you over a CS graduate.
me: cause I can get shit done.
... akward silence
interviewer: what do you mean by that? like html and CSS?
me: as you can see, I have built large scale real-time web apps with React/Redux (the stack they supposedly use and the position they're hiring for!) the knowledge I have is practical, it can't be learned from books, and it can't be learned from a course. Only building, breaking and rebuilding over time will teach you this knowledge. So essentially a CS grad, who hasn't committed the same amount of hours as I have, can't possibly match me. But they probably can better explain the real world applications of using linked lists...and won't have to Google what Pascal's triangle is like I had to....
interviewer: I see. we will be in touch.
lol well I guess they'll be in touch..9 -
Gotta love well meaning juniors with completely misplaced intentions.
Nathan: "Hey, do you want a quick 5 minute demo of the code we've changed to move to library version x?"
Almond: "Sure (I wasn't that fussed about moving to library x, but he seemed determined and there's some nice to haves with bumping the version, so we approved it.)"
Nathan: "Cool, so we have this built here, and..."
Almond: "...wait, that's not our CI system!"
Nathan: "Yeah, so I moved to a new CI system too because we couldn't get that working in the old one"
Almond: "...right, we'll need to discuss that, because..."
Nathan: "Sure, we also moved the templating engine as well as there were more examples using this one with library x"
Almond: "...yeah, so I don't think we're looking to switch the templating engine because..."
Nathan: "...and you guys also need to change a bunch of your code as it's all broken since we put the new version in, most of the tests fail..."
Great... so we've got a branch that breaks a bunch of code, switches the templating engine to one we don't want to use, and switches the CI to the one the company is trying to actively migrate away from...
Almond: "We're going to need longer than 5 minutes. I'll put something in the calendar."
🤦♂️😬😠8 -
Most of the tech YouTubers are really noob engineers.
Joma was a data scientist. He is an L3 engineer at Google and he hasn't done much during the last 1 year based on his internal stats.
I saw tech leads stats while he was at Google and that dude did nothing during his time. I'm sure he was an IC before he became a lead.
Clement talks about system design bull shit but he's a math major who worked on some angular front end while he was at Google. Basically his experience in tech is mostly involving using mat-button and mat-input. He also quit FB in a month.
Listening to tech lead gives me cancer. That guy was also some front end/ mobile engineer. I don't think any less of mobile engineers but tech leads acts as if he built some large scale systems at Google and FB. His opinion about react native shows how much of a noob he is. He also talked about docker in one of his video which showed he had some fundamental misunderstanding of what docker is. In his courses, he struggles to explain simple algorithms.
I don't know how these people have the courage to claim themselves as some sort of experts in the field when they are extreme noobs. They also sell some shady courses and are robbing innocent college kids.
One thing they all do well is talk. Which I give them 10/10.12 -
!rant & story_time
This happend to the startup I was working for at ~2011. I was a junior Android dev, working on a very popular app.
During experiments for a new feature, I discovered that the system AlarmManager has a serious bug - you can set a repeating alarm with interval=0ms. If your app takes more then 1 ms to handle the Intent, then the AlarmManager will start to fill up the intent Queue, with unexpected results to the OS. causing it to slow down, and reboot when it ran out of Ram. Why? my guess was that because the AlarmManager was part of the OS, then any issues caused by it caused the system process to ran out of ram, crashing it, and the whole system with it. the real kicker was that even after a reboot, the AlarmManager still had Intents queued, causing the device to bootloop for a while, untill the queue was cleared. My boss decided to report the problem to google, as this was an issue in the OS. I built an example app, that caused the crash 10-30 seconds after starting, and submitted to Google. Google responded later that day with "not an issue, no one will ever do this".
Well... At this point I decided to review the autoupdate feature in our app, to make sure this will not happen to us. We just released a new feature where a user can set an update schedule option in the app settings - where you could setup a daily, weekly, or hourly update for the app. after reviewing it, It looked good, and the issue was not triggered in the manual QA I did. So, it was all good. And we released an updated version to the store.
After we did an update-install, we discoverd that, there was a provlem reading the previous version SharedPrefs value for the update schdule settings, and the value defaulted to 0...
the result was, our app caused all our users to go into a bootloop, and because the alarm was reset when the devices booted up, the bootloop could only be solved in a factory reset, or removing our app, before the device rebooted, and then waiting a few reboot cycles.
We lost 50 places in the market, and it took us 6 months to get back to where we were.
It was not my fault, but it sucked big time!5 -
I hope Desks of devRant is still a thing because..
I BUILT MY OWN (。♡‿♡。)
My dad helped me with the metal work. I build the wooden plate myself and I think it looks beautiful.
Also my devDucks and my little bongo cat support me. As well as my real cats which now have more space to annoy me.
I love this table ( ˘ ³˘)♥10 -
I was in college studying stuff I couldn't care less about and had a job that was consuming me. A couple of colleagues and I then decided to open our own company. Four years of sleepless nights later, all colleagues left. I had lost touch with family and friends, had lost a girlfriend and had been left with all the company's debt to pay. Going back to my old career seemed like the only option, but I couldn't let me sabotage myself again. I sat my butt in front of my sister's computer and downloaded every coding class I could get my hands on. Getting used to sleep deprivation helped. Eventually I built my first app and landed my first freelance job. All hat in hand, I told this company I didn't have much experience and they told me they'd hire a senior developer as well. It was on a Sunday morning, at 4am, with the deadline breathing down our necks, that the senior developer had jumped ship and the company asked me if I could take over the project. That moment I realised it's all about being competent. That moment I knew I could do this.5
-
Be me, new dev on a team. Taking a look through source code to get up to speed.
Dev: **thinking to self** why is there no package lock.. let me bring this up to boss man
Dev: hey boss man, you’ve got no package lock, did we forget to commit it?
Manager: no I don’t like package locks.
Dev: ...why?
Manager: they fuck up computer. The project never ran with a package lock.
Dev: ..how will you make sure that every dev has the same packages while developing?
Manager: don’t worry, I’ve done this before, we haven’t had any issues.
**couple weeks goes by**
Dev: pushes code
Manager: hey your feature is not working on my machine
Dev: it’s working on mine, and the dev servers. Let’s take a look and see
**finds out he deletes his package lock every time he does npm install, so therefore he literally has the latest of like a 50 packages with no testing**
Dev: well you see you have some packages here that updates, and have broken some of the features.
Manager: >=|, fix it.
Dev: commit a working package lock so we’re all on the same.
Manager: just set the package version to whatever works.
Dev: okay
**more weeks go by**
Manager: why are we having so many issues between devs, why are things working on some computers and not others??? We can’t be having this it’s wasting time.
Dev: **takes a look at everyone’s packages** we all have different packages.
Manager: that’s it, no one can use Mac computers. You must use these windows computers, and you must install npm v6.0 and node v15.11. Everyone must have the same system and software install to guarantee we’re all on the same page
Dev: so can we also commit package lock so we’re all having the same packages as well?
Manager: No, package locks don’t work.
**few days go by**
Manager: GUYS WHY IS THE CODE DEPLOYING TO PRODUCTION NOT WORKING. IT WAS WORKING IN DEV
DEV: **looks at packages**, when the project was built on dev on 9/1 package x was on version 1.1, when it was approved and moved to prod on 9/3 package x was now on version 1.2 which was a change that broke our code.
Manager: CHANGE THE DEPLOYMENT SCRIPTS THEN. MAKE PROD RSYNC NODE_MODULES WITH DEV
Dev: okay
Manager: just trust me, I’ve been doing this for years
Who the fuck put this man in charge.11 -
Was asked to help a team of interns in a remote country, finish an app. Not only were they terrible at literally every aspect of development, but were arrogant and argued their "new" ways were right.
Spent weeks on the project being nice, trying to help them, sending them links to standards and documents, pointing out unit tests shouldn't be failing, everyone needs to have the same versions of the tools etc. You know, basic shit.
Things got quite heated a few weeks in when they started completely ignoring me. Shit was breaking all over the place and crashing, as I thought we were going to build it one way, and they went and built it another.
Was practically begging the team architect and my manager for help dealing with them. Only reply I got was the usual "were aware of the problem and looking into it" bullshit.
Eventually after the app was done, a mutual agreement was reached that the 2 teams would split (I maintain they were kicked out). All the local devs were happy, managers had mentioned how difficult they were and it would be great for us to finally work on our own.
So I thought everything was fine ... until my end of year performance review came along.
Seems I'm quite poor at "working with others" and I "don't try hard enough with others", it was clear I was struggling with the remote team and "made no effort".
WELL FUCK RIGHT OFF
Not being cocky, but I've never had anything like that in a performance review for the past 7 years. I'm a hard worker, and never have trouble making friends with colleagues. Everyone in the country complained about these remote fuckers, even the manager, who I begged for help. And the end result is I need to work harder.
I came in early, stayed late to fit their timezone, took extra tasks, did research for them, wrote docs. And I was told to work harder.
Only reason I didn't quit, was my internal transfer request was approved lol. New team is looking at projects orders of magnitude more impressive, never been happier.3 -
Don’t you love when you put a lot of blood, sweat, and tears into a company and then you get fired because your wife got a flat tire and you had to go help fix it?
When I got to this company they were not using version control, had no tooling in place, and most of our day was spent merging projects by hand and going through a long process to deploy our applications (this company is a primarily Salesforce company).
I got everyone using git and built a node client to transpile JavaScript and SASS, lint code, package everything together, and deploy it to Salesforce. Productivity jumped and the amount of time all of us spent merging code by hand dropped significantly.
A few weeks after finishing this CLI I was moved to another team and subsequently let go because I had to leave early to help my wife fix a flat tire. Now I am freelancing and actually doing pretty damn well for myself. Bonus: I no longer have to work with the disaster that is Salesforce!2 -
TL;DR: check polarity before plugging your DIY circuits into others!!!
*goes off to watch some Lucky Star and drink some booze*
*notices phone battery dying after 3rd pint*
But my charging cable that Huawei delivered with this thing is way too short... Well that ain't no problem, I can make one of my own 😎
But I'm tipsy.. sound I really enter the workbench in this state?
*goes off to build a charging cable anyway*
But what was USB-A male connector's polarity again? Oh, there's the fan's USB connector that I've made in the past. Let's check on that one. So, left is positive and right is negative?
*solders the wires on*
Snip, strip, stick, done! Well that was easy. I guess that all those failed soldering attempts and lost pads in the past as a means of training did pay off in the end!
*plugs phone into Raspberry Pi media center through new charging cable*
Strange sounds coming from the speakers.. well that's odd. Reverse polarity or maybe the Pi can't handle a 1A load from my phone?
*plugs phone into the 5V 5A charging hub that I've made earlier*
That oughta do.. current limits should be no more in that thing.
*charging hub makes high-pitch noise similar to the Pi speakers*
Definitely a reverse polarity, isn't it :') let's check on the Gargler...
Oh shit! It is a reverse polarity mistake!!! Should've checked this earlier >_<
*resolders wires properly*
Alright, finally done.. as I'm writing this post, my phone's charging from the Raspberry Pi through my fixed charging cable now...
Lesson learned. Always check on the internet what the pinout is before soldering anything, don't solder while tipsy, and be fucking grateful that this phone has reverse polarity protection in it.
Nexus 6P with all its shortcomings regarding power delivery and battery management, luckily it's got reverse voltage protection features built-in. Otherwise it might've costed me my phone. Always double-check before plugging anything into something else!!!5 -
Me: I can fix that workflow in about five minutes, In fact I can do it right now as we are speaking on the phone.
Customer: okay well... let me contact the director and make sure it’s okay that you fix it.
Me: I won’t make any changes to how it functions I’m only going to make it work again as it used to
Customer: we might need to schedule a meeting to talk about this because I’m not sure that we should be changing the site without permission
Me on the inside: I literally have global admin rights, unlimited power in Sharepoint, am responsible for making sure this stuff works, and BUILT this fucking thing, so now that I’ve been alerted of an issue I’m going to fix it. You are welcome to blame me if your boss is upset about it but I’m not going to wait for a fucking meeting to make sure it’s okay that I update a god damn email address in a workflow.
Me IRL: okay sounds great let me know when it is :)5 -
I did it: I built up another PC identical to my machine (https://devrant.com/rants/2923002/...) for my SO and installed Linux Mint for her, too. That had been my primary motive for an easy and stable distro in the first place.
Now that didn't come out of the blue. We were discussing the end of Win 7 already two years ago where I brought up my concerns with Win 10 - mainly the forced, lousy updates and the integrated spyware, and that I was considering Linux as way out.
I had expected quite some pushback because she had been exclusively on Windows since the 90s. However, I didn't sell Linux as upgrade. It's just that Win 7 is over, progress under Windows as well, and we're in damage control mode. Went down pretty well.
Fast forward three weeks - remember, first time Linux user and no IT-geek:
- it just works, including web, videos, and music.
- she likes Cinnamon.
- nice desktop themes.
- Redshift is as good as f.lux.
- software installation is just like an app store.
- updates work via an easy tray icon.
- quote: "Linux is great!"
- given this alternative, she doesn't understand why people willingly put up with Win 10.
- no drive letters: already forgotten.
- popcorn for upcoming Win 10 disaster stories.
- why do Windows updates take that long?
- why does Windows need to reboot for every update?
- why does Windows hang in that update boot screen for so long?
I'm impressed that Linux has come so far that it's suitable for end users. Next in line is her father who wants to try Linux, but that will be a story for tomorrow.22 -
Favorite Client: "The website you built and have been operating for us for 3 years now sucks."
Me: "But you made more money this year than the last two years combined!"
FC: "Yeah, but if it didn't suck so bad it would've made a lot more. And it was hard to manage our event ticketing and updating content."
Me: "It was hard because you've never had events sell out before. And you added one new person and replaced another at the worst possible time to get them trained on how to manage things."
FC: "Yeah. So now we are putting the site up for bidding to rebuild it from scratch for these new realities. Obviously you'll have the advantage over other agencies because of how well you know our organization and how things operate. How much do you think it'll cost?"
Me: https://youtu.be/l91ISfcuzDw3 -
I love Linux, but its community can be so full of incompetent assholes..
Just now I asked in Freenode ##linux how to get the process ID of my current running process in bash. I got my answer - it's a shell built-in called "$$".
Then people start to nitpick some more - why do you need it? How is that different from an exit? - to which my response was.. well I know the whole idea behind exit codes, and I'd use it whenever possible, in all defined behavior that allows my program to terminate itself whenever it can. This pidfile however would be used to exit itself and provide diagnostic information whenever the program enters undefined behavior - a segfault in C language. Scenarios in which I don't have full control over the script's behavior anymore, such as the system entering an unworkable state where the system stalled, still got some binaries in RAM but the rootfs got unwritable, such as now - very helpfully, thanks HP! - when my laptop likely overheated and shat itself. I issued sudo reboot into it, but even that wouldn't issue properly anymore due to the /sbin/poweroff binary becoming inaccessible too. I had to issue a hard power cycle.. one of the few times in which I'm thankful to HP for actually causing shit like this, lol.
Point is, that undefined behavior is what I'm trying to mitigate against. I certainly can't let any files other than diagnostics remain in nonvolatile storage like that, especially when their state should be predictable in order to ensure good operation (like files expressing whether the script is already running or not, i.e. lock files).
Back to that IRC chat. Aside from the answer, I got ridicule from people who probably don't even know how to properly compile a kernel. Ubuntu users, overconfident scum. Sometimes I feel like I should ask questions in channels like #archlinux only, where such incompetency is ridiculed on its own.13 -
Warning: long read....
I got a call this morning from a client who was panicking about not being able to login to his web panel.
So I went to the web panel and tried to login and was just redirected back to the login page. No errors or anything (at least visible on the page). Went looking for an error_log file and found it.
It turns out there was an error was showing: Disk quota exceeded.
So I went into the cPanel and checked, he used about 16GB out of 100GB and that got me confused. So I looked around and found out he was using about 510000/500000 inodes.
Went looking trough FTP to see where he has so many files and try and remove some.
Well it turns out that there were about 7 injected websites (warez, online casino, affiliate one etc) and a full hacking web panel on his FTP. After detailed analysis some who actually built the site (I just maintain some parts) made an upload form available to public with any checks on it. Meaning anyone could upload whatever they wanted and the form would allow it.
The worst part is that the client is not allowing us to secure the form with some sort of login or remove it completely (the best option) as it is not really needed but he uses it to upload some pdf catalogs or something.
TL; DR;
Old programmer created an upload form that was accessible to anyone on the web without adding any security or check as to see what kind of files was getting uploaded. Which lead to having maximum number on inodes used on server and client being unable to login.
Side note:
And ofc I had to go and fix the mess behind him again, even though he stopped working a long time ago and I started just recently and have been having nightmares of this project.2 -
A couple weeks ago, my coworkers built a site where 90% of pages consisted of all images and uncompressed images at that. I'm talking even the text was images. At the time I told my boss that it should be done with css and this would later come to bite them in the ass with page load speed and seo. He ignored me and said it was fine. Well today my boss assigned me with going back and basically removing images with things that can be done with css because load speed was terrible and seo wasnt too hot. Maybe if he listened to me from the get go, he wouldn't have to assign me this unnecessary work and I can focus on cleaning up all the other piss poor excuse of websites they have. Seriously tired of feeling like I, the junior dev is doing the teaching to these "senior developers" who get paid like twice as much as I do when I'm the one who is always doing the cleanups /optimization and guiding them on all their problems. Is it Friday yet?-_-4
-
Not a rant about anything in particular. Just a summary of some feelings stored in the hateful part of my heart.
Developing for Android: Add this third-party library to your Gradle build. Use (this) built-in Android class to make the thing work.
*Clicks link
Deprecated since API version SUCKMYDICK-7. Use (this) instead
*Clicks link
Deprecated since API version LICKMYBALLS-32. Use...
Developing for Windows: Please use (this) API call. It was literally already available before Bill Gates was born. Carbon dating has placed this item to older than the universe itself and it is likely the entry point for the big bang. It is also still the best way to accomplish (task).
Developing for Linux: "Hmm, I wonder how to use this"
> > > Some shitty mailing list in small blue monospace font tells you to reference a man page that is three versions behind but the only version available.
What? Those three sentences didn't explain it enough? Well, maybe you aren't cut out for this type of thing.
JavaScript: you know how it is.
SQL: You expect a decent-quality answer from stack overflow but you always get an outdated and hacky response and it's using syntax from Microsoft SQL. You need MySQL.
C#: A surprising number of Microsoft forum results ranking high on Google. You click on one in hopes that it will be of any sort of quality. You quickly close the tab and wonder why you ever even had hope.
Literally any REST API: Is it "query" or "q"? "UserID" or "user_id"? Oh, fuck, where's the docs again?
You thought you escaped JavaScript, but it was a trick!: Some bullshit library you downloaded to make your other library work redefined one of the global variables in the project you inherited. Now you get 347 "<x> is not a function" errors in your console. Good luck, asshole.
FontAwesome/ Material fonts/ Any icon font pack: You search "Close" for a close button icon. No results. You search "Simplified railroad crossing sign without the railroad". You get a close icon.
I think that's all of my pent up rage. Each of them were too small for an individual rant so I had to do this essay.2 -
1. Scripting out a team. I've built a collection of bash scripts to do what one of our teams does. Except the script does it in 30min and always does it well where that team used to take 4 to 10 hours and almost always missed something in the way.
2. Automate 70-80% of our BAU tasks with a single >4k loc bash script. Integrations with servicenow, lots of internal portals, predefined huge sets of commands to run on separate servers or lists of servers, do all sorts of diagnostics, schedule hw maintenance for DC folks, chase for approvals, track CHNG/CTSK tickets in a graphical chart so we would not miss any of them and lots lots more.
Finally we were able to afford time to make some coffee/tea.
These are the bau optimizations I'm proud of the most. And they have made significant impact on how our teams operate.
Whoever recognizes both company values in the tags and know what is that company - are they still using ´S´ in unix team? :)1 -
Fuck you gas company for back billing me 1500...I don't need you...built my own heating system...and with my managed pdu I can switch on remotely so its warm when I get home...so you can shove your heating app up your arse as well11
-
I'm fucking tired of this so called lead developer, lead developer my ass:
- He takes two days to complete a simple task and he dares to ask me why I extended the deadline of this freaking complex feature I need to build.
- He does a half-assed job when completes a task, no validation of data, no well informative message when exceptions are th thrown ...
- He assigns me his tasks although I already have tons and we need to release soon.
- I take care of developing and maintaining 60% of the APIs and I implemented the most complex of features and he dares to always say that my code can be optimized in a vague way, never mentioning what exactly is he talking about, and never telling me beforehand, he always does it during team meetings where another thing is being discussed.
- He presents the app to the whole company and at the end doesn't give credit where it's due, no " thank you for being part of this or helping build this" even if I built most of that shit, instead he says he's disappointed in me ... WTF! What did you fucking do to build this to be disappointed in me? I'm the fucking disappointed one here !!
- He fucking keeps preaching practices that he doesn't follow or he finds workarounds to skip them while the rest of the team follows them.
- He's like "I'm only taking care of this task to help you out?!" .... wtf! I have nothing to do with that fucking task, how are you helping me! You just keep fucking lazing around when we need to be finishing features asap.
Thank God I don't expect anything from you, I get enough credit from my boss who expresses how impressed he's with my job.6 -
That feeling when your client connection is more stable than the connection of a fucking game server... Incompetent pieces of shit!!! BEING ABLE TO PUT A COUPLE OF SPRITES DOESN'T MAKE YOU A FUCKING SYSADMIN!!!
Oh and I sent those very incompetent fucks a mail earlier, because my mailers are blocking their servers as per my mailers' security policy. A rant from the old box - their mail servers self-identify a fucking .local!!! Those incompetent shitheads didn't even properly change the values from test into those from prod!! So I sent them an email telling them exactly how they should fix it, as I am running the same MTA on my mailers (Postfix), at some point had to fix my mailers against the exact same issue as well, and clearly noticed in-game that they have deliverability problems (they explicitly mention to unblock their domain). Guess why?! Because their server's shitty configuration triggers fucking security mechanisms that are built against rogue mailers that attempt to spoof themselves as an internal mailer, with that fucking .local! And they STILL DIDN'T CHANGE IT!!!! Your fucking domain has no issues whatsoever, it's your goddamn fucking mail servers that YOU ASOBIMO FUCKERS SHOULD JUST FIX ALREADY!!! MOTHERFUCKERS!!!!!rant hire a fucking sysadmin already incompetent pieces of shit piece of shit game dev doesn't make you a sysadmin2 -
Customer: (calls emergency hotline) We have a really bad bug!
Rep: What seams to be the issue?
Customer: I need to talk to Sam, he knows what to do, tell him it's urgent.
Rep: can I tell Sam what the issue is?
Customer: Well, Sam built a newsletter program but I don't have a way to import mass amounts of emails addresses.
Rep: That sounds like a feature, not a problem.
Customer: why wouldn't it do that? Would you build a car without a steering wheel?
Rep: I am not sure that's relevant to the problem.
Customer: what do you mean?
Rep: I would say it is more like, "would you build a car without a pair of jet skis attached to the back." And we would respond with, "we would be happy to add Jet Skis, but it's going to cost you additional money."
Customer: So, how are we going to fix this bug in YOUR software?
Rep: :/5 -
Fuck ISP. Just moved to nz. Explain to this company im working at home on the internet. Need it fast.
Takes 8 days to get the 📦 in a country of 5 million people. Wtf.
Box does not contain all default connections for box to work in a default house hold.
Call them. Tells me i have to go get it myself because i didnt request it. Fuck you or did you just fuck me.
Pay 100 dollars (this is in new zealand even though it feels like afghanistan. Not trying to offenecse any on here btw) a month for unlimited internet and phoneline.
They forget to put on the phone line.
Pay their fucking stupid 4 dollar cable insurance because new zealand has houses built for fucking cave people with 0 insolation and prone to dampness.
First day connections dont work. Well is that not fucking beautiful. I actually payed 4 worthy dollars.
WRONG YOU MOTHER FUCKER.
They tell me i didnt take the insurance.i go mayhem tell them how useless they are. So they send some one 8am the next mornin while activating the insurance. Ho yeah they also told me they forgot to include landline in my account.
Now 2 days in everything works im happy. Wake up to “your account has been suspended because you went over the max 200$ of your credit. You owe us 250$ before you can re-activate your account....
Inside boiling. Rudness and caps just won`t help.... I need some blood.... Some ISP blood....12 -
My sister is the one who got all the support, despite her now working as a cleaning lady, having 2 kids of her own, having already married and divorced, having been in financial trouble several times, oh and she's only 22 years old. She couldn't finish high school and even getting a driver's license wasn't without hoops. Now she's dating someone as old as our mother.
I've been putting my career front and center in everything. I want to make my own business and sell a network-oriented Linux distribution through it. My mother was impressed when her colleague whipped up a basic website for their company. You can imagine the surprise when I told her that that's only one component of my infrastructure. My family and I still aren't on very good terms, but yeah.. going from "don't stare at those "screens" all day long" to "wow, you've actually done something with these screens" (to her all technology is a screen) is at least some progress I guess.
No support whatsoever though, neither in my endeavors in programming, server administration and whatnot (but hey what can I expect) but what annoys me the most is that my sister did get all the help in the world for maintaining her general household. I didn't get any of that, first night when I moved into my apartment I slept on the floor because my bed wasn't completely built yet. Now that all of that is done, I don't consider my mother very welcome in my apartment actually...
Oh well, we've gotten where we are somehow at least. Just reading, reading and reading more manuals. That's all you need really.15 -
Client:
"Ok,. so your saying that its gonna take you 63 hrs to create a simplified CRM with basic functionality and auto fill docs or automated work flow docs as an added feature?"
My response (after already under-quoting and planning on cutting some corners because he has a smaller budget than normally necessary):
"It sounds simpler than it is. There are a lot of things I need to take into account that you wouldn't even think about.
For instance:
Making sure your emails don't go to the client's spam folder. This requires the sending domain to be verified via DNS settings. I have to ensure your email content passes a spam test (link to text ratio needs to be good). I assumed you'd want an email that has your logo and looks good. This means testing the design in Outlook to make sure it's not broken.
What if the email doesn't send due to an invalid email address, or bounces back? You'll need to be notified.
What if the client list for the week contains duplicates? You need them merged or ignored.
Generating a PDF from HTML can be tricky because the conversion isn't apples to apples so there are things I need to adjust to make them as close as possible.
Making a site completely mobile friendly (the tier 3 option) can be very time consuming as well. It's not about whether or not it fits on a mobile phone, it's about whether or not it's intuitive and useful. You're essentially getting a mobile app without paying for separate development of an app.
If I took everything into consideration and built this to be 100% bullet proof, it would cost tens of thousands.
I'm doing my best to leverage your needs with the probability of running into an issue. I'm not going waste my time/your money on something that will likely never happen."9 -
I've been an IT Director for a medium sized company for 11 years...
2 years ago we decided to custom develop an app for online ordering through a third party... This company quoted $36k, I told the team that I think it will be $100k and here is a solution that will do 90% of the needs for $50 a month per location... boss says he doesn't care if it's 200k he wants 100% of what we want and the ability to change it to perfectly fit our needs.... FFW to present... $36k app built by committee of 8 people.. = $400k... and counting for maintenance and adjustments. We now use that $50 a month solution as well to cover another need that would be too costly to code into the original app SMH... and now myself and my team are learning to code to support it internally because.... why would you just hire a qualified person... anyhow, I'm a few months into a self paced online bootcamp and loving it. So ... bright side found! Rant over2 -
This was WAY back in my first job as a programmer where I was working on a custom built CMS that we took over from another dev shop. So a standard feature was of course pagination for a section that had well over 400,000 records. The client would always complain about this section always being very slow to load. My boss at that job would tell me to not look at the problem as it wasn't a part of the scope.
But being a young enthusiastic programmer, I decided to delve into the problem anyway. What I came to discover was that the pagination was simply doing a select all 400,000 records, and then looping through the entire dataset until it got to the slice it needed to display.
So I fixed the pagination and page loads went from around 1 min to only a few seconds. I felt pretty proud about that. But I later got told off by my boss as he now can't bill for that fix. Personally I didn't care since I learned a bit about SQL pagination, and just how terrible some developers can be.5 -
First company I worked for, built around 40 websites with Drupal 7...in only a year (don't know if it's a lot for today's standards, but I was one guy doing everything). Of course I didn't have the time to keep updating everything and I continually insisted to the boss that we need more people if we are going to expand. Of course he kept telling me to keep working harder and that I "got this". Well, after a year a couple of websites got defaced, you know the usual stuff if you've been around for some time. Felt pretty bad at the time, it was a similar feeling to having your car stolen or something.
Anyways, fast forward about 2 years, started working on another company, and well...this one was on another level. They had a total of around 40 websites, with about 10 of them being Joomla 1.5 installations (Dear Lord have mercy on my soul(the security vulnerabilities from these websites only, were greater than Spiderman's responsibilities)) and the others where WordPress websites, all that ON A SINGLE VPS, I mean, come on... Websites being defaced on the daily, pharma-hacks everywhere, server exploding from malware queing about 90k of spam emails on the outbox, server downtime for maintenance happening almost weekly, hosting company mailing me on the daily about the next malware detection adventure etc. Other than that, the guy that I was replacing, was not giving a single fuck. He was like, "dude it's all good here, everything works just fine and all you have to do is keep the clients happy and shit". Sometimes, I hate myself for being too caring and responsible back then.
I'm still having nightmares of that place. Both that office and that VPS. -
Casual workday be like:
Project manager: It is important we deliver these features.
Me & Coworker: Sounds reasonable, here is how long we need, roughly.
Mgr: Well, the deadline is already set and the contract is signed and written.
M&C: Ummm...
Mgr: Also, while we are hosting the application, we are not paid for operational cost, so make sure to optimise the crap out of it immediatly. Preferably while developing the features.
(A wild architect appears): Also everything has to be built on cans and kubernuts, with rectangular ui and bootstyling and with these internally developed backend frameworks NOBODY tests. Coroporate policy you know.
(A wilder division CEO appears on meeting): Also we are rolling out code KPI's across the organisation. Everyone is expected to Focus on documentation, test coverage and there is now mandatory SonarQube scanning of repos. ZERO DEFECTS PEOPLE
M&C: ...
(Wildest Salesteam appears): By the way we sold the application to these other customers, they love feature XYZ and must have it.
M&C: It does not have feature XYZ
Mgr: It will have feature XYZ
M&C: Allright so with all the extra funding from the sales, we need to hire atleast one Machine learning guy, an extra frontend specialist a developer and maybe funnel some of the funding into slacking the operational budget in the start.
Animated Suit *Railing a line of coke from his gold plated ihpone 15*: What funding? Get to work. Also your havent been super sharp with your time registration.2 -
Saw some cheapie little radio in the dollar store, bought 2 of them for reverse engineering. Powered it from my lab bench power supply as usual, and tested whether it actually works before doing anything else.. then I noticed that the tunes were actually quite catchy, so I just ended up listening.
Then I started to notice that the audio wire I was using (the one I've spent a couple of days building earlier) had intermittent audio issues where the right driver would drop out when the wire was held in certain positions. Oscilloscope probing showed that there was some sort of disconnect, with only the 50Hz noise from the power lines showing up. Opened up the connector and noticed that the ground wire had detached. An 28AWG electrical wire that was inside a jack that was meant for stress relief! Yet the copper strands must've detached one by one regardless. What do I need then, huh?! 18AWG which wouldn't even fit on the connector, only to see the strands in that eventually detach as well?! You know what, let's go fancy.. 1AWG which is meant for extremely high current applications!!
At that point I was literally shouting "FUCK!!! Why does this shit always happen to me?!! ONE FUCKING PROJECT THAT FINISHED SUCCESSFULLY, YET STILL BROKE?!!!! WHY!!!!!!"
Clearly I need some fresh air to cool down. On my way to the fast food restaurant to get some Bicky burgers. More shit, humans. One stupid driver who slowed down on me, which of all things I hate the most. GO FASTER ALREADY YOU SLOWFUCK, AND GET THE FUCK OUT OF MY SIGHT!!! Next a pedestrian with a dog.. I swear motherfucker, if that dog comes anywhere near me I'll personally turn it into fucking fricassee.
Ah and then comes the killer.. in this stupid fucking summer, all that's needed to fix any issue is a fucking stupid DESPACITO, right?! More like DeSPASTICo!! FUCK!!!!
.. Back home, rather tired. So essentially a wire that was specifically built to have high endurance broke on me. Back to Bluetooth I guess.rant fuck the planet fuck humanity fuck everything fuck despacito fuck despastico fuck life fuck me fuck humans fuck the world fuck this shit fuck society2 -
We have a pretty simple rule in our team:
Do not deploy to production on Friday.
Well thanks to the client being very slow to reply to me, they only signed off on launching the app at 15:30 on Friday, for a big campaign the app was built to facilitate starting Saturday.
Guess who had to bite the bullet and launch a new app into production at 15:30 on Friday.
Guess who got a text from his boss at 19:30 that there was a critical change required tonight.
Guess who was making code changes and deploying to production at 21:15 on Friday night while drinking Gin and tonic...
Nb This was a project only i was assigned to and came in as a rush job at the last minute.9 -
Yesterday I bought myself a PSP to relive some of my childhood memories, run custom firmware on it and so on. Unfortunately however, the battery on this one is seriously puffed up, and I need one in order to update the firmware from 5.50 CFW (the seller actually modded it too!) to 6.61 OFW (to then install CFW from there again).
I figured that I might as well have a kick at disassembling the battery for good measure, to take out its controller and power it from my lab bench power supply. I set it to 3.70V, double-checked the connections.. nothing. I raised the voltage to 4V, still nothing.
There is absolutely nothing wrong with the controller from looking at it. The magic smoke is still in there, all I did was removing the housing and snipping off the battery. I measured the cell voltage and it was only some residues at 0.01V. Might be internally shorted or something, normally even dead cells settle back at 3.7V unless you keep them shorted externally.
After seeing this so many times now with controllers, I'm starting to get a feeling that manufacturers actually program these things to look at the battery voltage, and when it reaches 0V, to just make the controller kill itself. Doesn't matter if the controller's electronics are still good, just fucking kill it.
If true, that is very, VERY nasty. It would also explain why batteries in laptops especially all have different form factors, despite having used regular 18650's internally for a very long time. It would explain why they're built like tanks. It would explain why manufacturers really don't want people in there. Yes there are safety issues and you're literally diffusing a bomb. Since recently we've also got space optimization.. anything for half a mm of thickness, amirite? But doing it this way is fucking disgusting. There is absolutely no reason for the controller to kill itself when the cell dies. Yet it seems like it does.
PS: I've posted the original picture on https://ghnou.su/pics/... now if you're interested. I noticed in my previous rant that devRant really squishes these down.12 -
I think I ranted about this before but fuck it.
The love/hate relation I have with security in programming is funny. I am working as a cyber security engineer currently but I do loads of programming as well. Security is the most important factor for me while programming and I'd rather ship an application with less features than with more possibly vulnerable features.
But, sometimes I find it rather annoying when I want to write a new application (a web application where 90 percent of the application is the REST API), writing security checks takes up most of the time.
I'm working on a new (quick/fun) application right now and I've been at this for.... 3 hours I think and the first very simple functionality has finally been built, which took like 10 minutes. The rest of the 3 hours has been securing the application! And yes, I'm using a framework (my own) which has already loads of security features built-in but I need more and more specific security with this API.
Well, let's continue with securing this fucker!10 -
So, I was gonna rant about how it can be difficult to design event-based Microservices.
I was gonna say some shit about gateways APIs and some other stuff about data aggregation and keeping things idempotent.
I was going to do all this but then as I was stretching out the old ranting fingers I decided to draw a diagram to maybe go along with the rant.
Now I’m not here to really rant about all that Jazz...
I’m here to give you all a first class opportunity to tear apart my architecture!
A few things to note:
Using a gateway API (Kong) to separate the mobile from the desktop.
This traffic is directed through to an in intermediate API. This way the same microservices can provide different data, and even functionality for each device.
Most Microservices currently built in golang.
All services are event based, and all data is built on-the-fly by events generated and handled by each Microservices.
RabbitMQ used as a message broker.
And finally, it is hosted in Google Cloud Platform.
The currently hosted form is built with Microservices but this will be the update version of things.
So, feel free to rip it apart or add anything you think should change.
Also, feel free to tell me to fuck right off if that’s your cup of tea as well.
Peace ✌🏼19 -
Microsoft Office Sharepoint Server.
There is no technology on Earth that speaks worse of Microsoft than is this crap. Nothing they ever made (not even Comic Sans) is as bad as Sharepoint.
No proper editor. Everything is slooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooow. To run it you need a state-of-the-art server. There is no way to make the UI modern, as Sharepoint itself is built upon 1995 era HTML. Tables in tables in tables in tables in tables. And even if you do a web part that's readable, it will be wrapped in shit and presented to the client anyway.
It's so easy to break too. Most of the time I was just watching why the fuck it didn't work. Huge problem with caching as well. Deploying any change requires 10 minutes of manual labor.
I get why companies want to use it. Out of the box it's got quite a few very nice features, and aside from the problems setting it up, and hardware requirements, it works decently well.
But I won't come near it unless I'm paid 100$ per hour or starving to death.10 -
So I have that custom-made wifi router I've built. And it uses a USB wifi adapter with AC (wifi5) capability - the fastest one I could find in AliExpress.
I set it up a while ago - the internet access works fine, although speeds are somewhat sluggish. But hey, what to expect from a cheapo on Ali! Not to mention it's USB, not a PCIe...
A few days ago I ran a few speedtest.net tests with my actual AC router and the one I've built. Results were so different I wanted to cry :( some pathetic 23Mbps with my custom router :(
This evening I had some time on my hands and finally decided to have an umpteenth look.
nmcli d wifi
this is what caught my eye first. The RATE column listed my custom router as 54Mbps, whereas the actual router had 195Mbps.
I have reviewed the hostapd configuration sooo many times - this time nothing caught my eye as well.
Googling did not give anything obvious as well.
What do we do next? Yes, that's right - enable debug and read the logs.
> VHT (IEEE 802.11ac) with WPA/WPA2 requires CCMP/GCMP to be enabled, disabling VHT capabilities
This is one of the lines at the top of the log. Waaaaiiitttt.. VHT is something I definitely want with ac -- why does it disable that??? Sounds like a configuration fuckup rather than the HW limitation! And config fuckups CAN be fixed!
Turns out, an innocently looking
`wpa_pairwise=TKIP`
change into
`wpa_pairwise=TKIP CCMP`
made a world of a difference!
:wq
!hostapd
connect to the hostapd hotspot and run that iperf3 test again, and... Oh my. Oh boi! My pants fell off -- the speed increased >3x times!
A quick speedtest.net test deems my custom router's download speeds hardly any worse than the speeds obtained using my LInksys!!
The moral of the story: no matter how innocent some configurations look, they might make a huge difference. And RTFL [read the fucking logs]
In the pic -- left - my actual router, right - my custom-built router with a USB wifi adapter. Not too shabby!7 -
[long]
When searching for internship via school I found this small startup with this cute project of building a teaching tool for programming. There were back then 2 programmers: the founder and the co-founder.
Then like 1 week before the internship started, the co-founder had a burnout and had to get off the project, while the company was so low on budget the founder, aka my new b0ss, had to work separate jobs to keep the company alive. (quite metal tbh)
It's funny because I'm a junior developer, 100%. I've been coding as a hobby for around 8 years now but I've never worked in a big company before. (No exception to this workplace either)
First project I get: rewrite the compiler. The Python compiler.
"But wait, why not just embed a real compiler from the first case?"
-nanananana it's never simple, as you probably know from your own projects.
The new compiler, as compared to existing embedded compiler solutions out there, needed these prime features:
- Walk through the code (debugger style), but programmatically.
- Show custom exceptions (ex: "A colon is needed at the end of an if-statement" instead of "Syntax error line 3")
- Have a "Did-you-mean this variable?" error for usage of unassigned variables.
- Be able to be embedded in Unity's WebGL build target
All for the use case of being a friendly compiler.
The last dash in the list is actually the biggest bottleneck which excluded all existing open-source projects (i could find). Compliant with WebAssembly I can't use threads among other things, IL2CPP has lots of restrictions, Unity has some as well...
Oh and it should of course be built using test-driven development.
"Good luck!" - said the founder, first day of work as she then traveled to USA for **3 weeks**, leaving me solo with the to-be-made codebase and humongous list of requirements.
---
I just finished the 6th week of internship, boss has been at "HQ" for 3 weeks now, and I just hit the biggest milestone yet for this project.
Yes I've been succeeding! This project has gone so well, and I'm surprising myself how much code I've been pumping out during these weeks.
I'm up now at almost 40'000 lines of source and 30'000 lines of code. ‼
( Biggest project I've ever worked on previously was at 8'000 lines of code )
The milestone (that I finished today) was for loops! As been trying to showcase in the GIF.
---
It's such a giant project and I can honestly say I've done some good work here. Self-five. Over-performing is a thing.
The things that makes me shiver though is that most that use this application will never know the intricates of it's insides, and the brain work put into it.
The project is probably over-engineered. A lot. Having a home-made compiler gives us a lot of flexibility for our product as we're trying to make more of a "pedagogic IDE". But no matter that I reinvented the wheel for the 105Gth time, it's still the most fun I've had with a project to date.
---
Also btw if anyone wants to see source code, please give me good reasons as I'm actively trying to convince my boss to make the compiler open-source.
Cheers!4 -
take your fucking feelings out of the equation
AND GET OVER IT
feelings don't get market share, features built, or any growth
so shut the hell up and grow up
AND DO YOUR DAMN JOB
you'll be proud devRant, I've finally decided to leave these clowns. updates to come...
only sad part is my rage posting will likely drop to very low levels, but i guess my own well being is a bit more important than devRant karma :) 🤷♂️6 -
Just realized that I am not at +1000 points and I must say...well. That I really like this community. Being able to talk to other people with similar interests helps me get through the day in ways that I cannot describe. Where I am from there aren't that many developers at all and those that exist around do not have the experience, talent, or knowledge that the user base here has. This is a diverse group, with people comming from different backgrounds and tech stacks and I learn a lot from each and every one of you. Thanks guys for giving me a place to be at when software gets crazy. Cheers to you all magnificent basterds, and to the awesome gentlemen that built my favorite app ever!! You guys rock!2
-
Just opened my laptop to see if I can upgrade my ram, and yes I can
And I've got space for a 2.5 drive as well!
Fuck yeah!
All I need is a 1080 inside of this :P
But I've just got a shitty built-in gpu...16 -
There was a time when I couldn't code a line in Python. My friends were all very proficient at the language as well as different Frameworks.
I started off with a strategy where I did 10 lines of coding today, 20 next, 30 day after and it grew. I became proficient with the language and built a stock market simulator for my college project.
Learnt multiple topics from math, programming, and DevOps to deploy it as well.
Most satisfying feeling was when 300 people played it for 2 weeks' time. That was when I realised I made it. Not literally, but figuratively.2 -
Personally the coolest was the program I built for my fathers use on his job.
It was my first to be used commercially in the real.
That was a very big thing, I was 17 at the time an used turbo pascal 5.5 and he used it to compute how well all machinery was doing, they rented out diggers and other construction equipment to construction sites and manually compute this with a calculator took up to three days. (This was 1987 so there was not very many ready made programs for business, you often had to build your own)
With this program he had it done in around 30 minutes.
The next best was recently when I got my raft distributed consensus cluster server working. Its a little bit like zookeeper.
Building that purely from the research paper was rewarding but a bit of a challenge.3 -
Ever heard of event-based programming? Nope? Well, here we are.
This is a software design pattern that revolves around controlling and defining state and behaviour. It has a temporal component (the code can rewind to a previous point in time), and is perfectly suited for writing state machines.
I think I could use some peer-review on this idea.
Here's the original spec for a full language: https://gist.github.com/voodooattac...
(which I found to be completely unnecessary, since I just implemented this pattern in plain TypeScript with no extra dependencies. See attached image for how TS code looks like).
The fact that it transcends language barriers if implemented as a library instead of a full language means less complexity in the face of adaptation.
Moving on, I was reviewing the idea again today when I discovered an amazing fact: because this is based on gene expression, and since DNA is recombinant, any state machine code built using this pattern is also recombinant[1]. Meaning you can mix and match condition bodies (as you would mix complete genes) in any program and it would exhibit the functionality you picked or added.
You can literally add behaviour from a program (for example, an NPC) to another by copying and pasting new code from a file to another. Assuming there aren't any conflicts in variable names between the two, and that the variables (for example `state.health` and `state.mood`) mean the same thing to both programs.
If you combine two unrelated programs (a server and a desktop application, for example) then assuming there are no variables clashing, your new program will work as a desktop application and as a server at the same time.
I plan to publish the TypeScript reference implementation/library to npm and GitHub once it has all basic functionality, along with an article describing this and how it all works.
I wish I had a good academic background now, because I think this is worthy of a spec/research paper. Unfortunately, I don't have any connections in academia. (If you're interested in writing a paper about this, please let me know)
Edit: here's the current preliminary code: https://gist.github.com/voodooattac...
***
[1] https://en.wikipedia.org/wiki/...29 -
Google/Microsoft: We are committed to Linux and the open source community!
Us: Awesome, so can we expect a one drive and google drive client for Linux or at least well documented API's?
Google/Microsoft: *Unveils random arse applications and services without answering our pleas*
Google is by far the worst for this, Chromebooks built on Linux, getting full Linux application support and android that's built on Linux all have Google drive support baked in... Can we just get a single fucking desktop client... Please!8 -
I can’t even say what’s wrong with PHP, because— okay. Imagine you have uh, a toolbox. A set of tools. Looks okay, standard stuff in there.
You pull out a screwdriver, and you see it’s one of those weird tri-headed things. Okay, well, that’s not very useful to you, but you guess it comes in handy sometimes.
You pull out the hammer, but to your dismay, it has the claw part on both sides. Still serviceable though, I mean, you can hit nails with the middle of the head holding it sideways.
You pull out the pliers, but they don’t have those serrated surfaces; it’s flat and smooth. That’s less useful, but it still turns bolts well enough, so whatever.
And on you go. Everything in the box is kind of weird and quirky, but maybe not enough to make it completely worthless. And there’s no clear problem with the set as a whole; it still has all the tools.
Now imagine you meet millions of carpenters using this toolbox who tell you “well hey what’s the problem with these tools? They’re all I’ve ever used and they work fine!” And the carpenters show you the houses they’ve built, where every room is a pentagon and the roof is upside-down. And you knock on the front door and it just collapses inwards and they all yell at you for breaking their door.
That’s what’s wrong with PHP.8 -
I was reading the post made by another ranter in which he was basically asked to lower the complexity of an automation script he wrote in place of something everyone else could understand. Another dev commented that more than likely it had to do with the company being worried that ranter_1 would leave and there would be no one capable of maintaining the code.
I understood this completely from both perspectives. It makes me worry how real this sometimes is. We don't get to implement X tech stack because people are worried that no one would be able to maintain Y project in the event of someone leaving. But fuck man, sometimes one wants to expand more and do things differently.
At work I came to find out that the main reason why the entirety of our stack is built in PHP is because the first dev hired into the web tech department(which is only about 12 years old in my institution) only knew PHP. The other part that deals with Java is due to some extensions to some third party applications that we have, Java knowledge (more specifically Spring and Grails) is used for those, the rest is mostly PHP. And while I LOVE PHP and don't really have anything against the language I really wonder what would it be of the institution had we've had a developer with a more....esoteric taste. Clojure, Elixir, Haskell, F# and many others. These are languages and tech stacks that bring such a forward way of thinking into the way we build things.
On the other hand, I understand if the talent pool for each of these stacks is somewhat hard to come up with, but if we don't push for certain items then they will never grow.
The other week I got scolded by the lead dev from the web tech department for using Clojure to create the demo of an application. He said that the project will most likely fall into his hands and he does not know the stack. I calmly mentioned that I would gladly take care of it if given the opportunity as well as to explain to him how the code works and provide training to everyone for it :D I also (in all of my greatness) built the same program for him in PHP. Now, I outrank him :P so the scold bounced out of the window, plus he is a friend, but the fact remains that we reached the situation in which the performance as well as the benefits of one stack were shadowed by the fact that it holds a more esoteric place in the development community.
In the end I am happy to provide the PHP codebase to him. The head of the department + my boss were already impressed with the fact that I was able to build the product in a small amount of time using a potent tech stack, they know where my abilities are and what I can do. That to me was all that matters, even if the project gets shelved, the fact that I was able to use it at work for something means a lot to me.
That and I got permission to use it for the things that will happen with my new department + the collective interest of everyone in paying me to give support even if I ever leave the institution.
Win.13 -
Dealing with other technical professionals who cannot think outside their respective boxes.
Here is an example.
A QA (who is very good at her job) said this...
Her:
“We need to get one customer who is willing to pay us a lot of money to make the features they want!”
Me:
“But you realize we are a SaaS company and that means we need lots of customers and constant growth”
Her:
“No, we need to find a customer who is willing to pay us, like a million, to make the features they want. Then we make them for that customer. Then we do that again.”
Me:
“We sell software to small businesses, none of them have a million dollars to pay us, and even if they did then why wouldn’t they build it themselves?
Her:
“Well, when I worked for my last company this is what we did...”
Me:
“So you worked for a contracting company who built software for individual companies. We are not that type of company. We are a SaaS company.”
Her:
“It’s the same thing”
Me:
~Facepalm~
As a software developer and entrepreneur it frustrates me when everyone think everything is the same.
You’ll here things like...
“All we need is to get lucky with one big hit and then we will ride that wave to success, just like Facebook or Amazon!”
Holy fucking shit balls, how stupid can you be!
FB and AZ run thousands of tests a day to see what works. They do not get “lucky”. They dark launched FB messenger with thousands of messages and then rolled it out to their internal team first, they did not get lucky!
Honestly though, I can’t blame them. Most people just want a good job that pays. They aren’t looking to challenge their assumptions.
Personally I know I will be in situations again where my pride, my assumption, my fears are realized and crushed by the market place and I do not want to live in a world of willful ignorance.
I’d rather get it right than feel good.1 -
Dear Gradle,
I just modified a single attribute value in an XML. Please!!
You just built the whole thing a few minutes ago.. Why do you wanna... Oh well...
Gradle build running....8 -
SeniorDev: “OMFG..MalwareBytes is taking up almost 50% of my CPU!”
Me: “Didn’t you have a virus on your machine couple of days ago?”
SeniorDev: “Uh..yea..but it was cleaned up.”
Me: “Your OS might have been compromised. If your antivirus is still busy doing something, then it may be time to start over with a fresh re-install.”
SeniorDev: “No, that’s not it. This is just BS our Network admins don’t want to fix because I’m not a VP”
Me: “I’m pretty sure they don’t care.”
-in as much of a ‘I’m kidding’ tone as I could -
Me: “They would care more if you stopped going to inappropriate web sites on the company computer.”
SeniorDev: “I never go to those sites. It was a link to a charity web site my wife sent me. You know how those sites are. They are built by college kids, so they have no security and was hijacked. That’s how I got the virus.”
Me: “You actually said that to Jim and he believed it?”
SeniorDev: “Well ...yea because….oh …–bleep- you.”
"Jim" sits about 50 feet away, popped his head over the cube wall and smiled. It was awesome. -
We are currently building a CRM for a company, and we have to demo it for some of the users, two guys start asking couple of questions.
Them: what it is built with?.
Me:PHP, do you know it?
Them: No we only know WordPress.
Me: well WordPress is built with PHP.
them: Ah that's probably why we thought it looked like WordPress.
Me: yeaaah probably... sure :)2 -
!dev
I come from a small shitty valley where all that people want to achieve is getting approved for loans to buy more cows and shit.. My only friend comes from there as well but he’s different, more like me.. build a life, get out and pursuit something better and bigger..
We grew up smoking everything we could and drinking everything we got because what else are we gonna do, put shit on fire? Been there, done that.. it sucks growing up on the poop hole of the world.
We both left that shithole and started careers but he’s throwing it all out the window.. he’s getting caught with weed, DUI and shit. just a few years ago he got off of more serious drugs.. He built a career and shit for about 10 years but right now he’s just throwing it all away because drugs are in his comfort zone. But he has to go give Pias samples for a while now and if he doesn’t stop he is not getting his license back and the unemployment insurance won’t even pay him because (although he lost the job because of Covid) they said it’s because he smokes weed.
Without the license goes his career as he’s a service electrician.
So fucking hurtful to see, man.
And so hard to accept that he won’t listen and than I’m not his dad who can tell him what to do..
90% of the kids I grew up with who managed to leave that shit hole ended up as homeless junkies.. I guess I’m happy to have the mindset to not end up like them.. and that’s really all it is, the mindset is the only difference (which is complex in itself of course like parenting and stuff)6 -
So I built one of them Auto GPTs using Open Assistant and Python.
Essentially I have two chat rooms with each representing a different agent and some python written to facilitate the api communication and share messages between those two. Each agent is primed with a simple personality description, expected output format and a goal. I used almost identical inputs for both.
It boils down to "You are an expert AI system called Bot1 created to build a simple RPG videogame in python using pygame."
So anyway, I made that, and let it run for a couple of iterations and the results are just stunning, but not for the reasons you might expect. The short story is that they both turned into project managers discussing everything and anything *except* the actual game or game ideas and in the end they didn't produce a single line of code, but they did manage to make sure the project is agile and has enough documentation xD.
Presumably I need to tinker around with their personalities more and specify more well defined goals for this to lead to anything even remotely useful, but that's besides the point. I just thought others might find the actual conversation as funny as I did and wanted to share the output.
Here's a pastebin of the absolute madness they went through: https://pastebin.com/0Eq44k6D
PS: I don't expect anyone to read the whole thing word for word. Just scroll to a random point and check out the general conversation while keeping in mind that not a single line of code was developed throughout the entire thing8 -
Part 3: today has become a blog post.
WARNING: this is loooooooooooong
Background is my boss and I were talking about hiring the right people, also generalists vs specialists.
Essentially John and I are the specialists. When something goes wrong it ends up escalating to either him or me. But this is not sustainable as I can't handle the stress and most likely he eventually won't either.
And this goes back to general hiring standards.
All the good people leave and the remaining ones are stuck with all the problems and eventually for one reason or another they leave as well... or the code keeps getting worse... until someone decides to scrap everything and build a new one... But now the only people left to lead teams are monkeys.
Now current problem is the only person that can replace me is John and the only person that can replace John, at least in handling issues, is me...
It's a certain type of person, people that have a growth mindset and can pick things up.
Google and strong tech companies are full of these types of people where if needed there's always someone that can step in and help. They have the background and the ability to quickly learn. This also lets them innovate and identify and solve new problems.
I think that's what the technical interviews are for, to find these types of people.
And you really can't train this. I'm not sure how effective our "new" training program on high quality development is but I'm guessing it's not. Excellence has to be in the culture and it's not something that can be built overnight or by randomly hiring people.
So in a sense, tech companies aren't really paying well, they're paying cost to what their hires are really worth, after they've verified it, and enough to keep them from leaving.3 -
I can’t even say what’s wrong with PHP, because— okay. Imagine you have uh, a toolbox. A set of tools. Looks okay, standard stuff in there.
You pull out a screwdriver, and you see it’s one of those weird tri-headed things. Okay, well, that’s not very useful to you, but you guess it comes in handy sometimes.
You pull out the hammer, but to your dismay, it has the claw part on both sides. Still serviceable though, I mean, you can hit nails with the middle of the head holding it sideways.
You pull out the pliers, but they don’t have those serrated surfaces; it’s flat and smooth. That’s less useful, but it still turns bolts well enough, so whatever.
And on you go. Everything in the box is kind of weird and quirky, but maybe not enough to make it completely worthless. And there’s no clear problem with the set as a whole; it still has all the tools.
Now imagine you meet millions of carpenters using this toolbox who tell you “well hey what’s the problem with these tools? They’re all I’ve ever used and they work fine!” And the carpenters show you the houses they’ve built, where every room is a pentagon and the roof is upside-down. And you knock on the front door and it just collapses inwards and they all yell at you for breaking their door.
That’s what’s wrong with PHP.6 -
Throughout the years I have completed many projects successfully. Some projects really stood out and were awesome to do. This is not about these projects. It is however about one of my very first projects for my first real software development client many years ago, somewhere around the year 2000.
I was working for some years at TNO, a well known Dutch organization, and the lady at the reception asked me if I could help her husband out because he was strugling to get some web app developed. So I said sure, I can talk to him and see what I can do.
So I went to their house and talked to her husband. They were living in a huge villa and turns out her husband owns an international flower export business for which he needed some web app for. So we had a nice talk and he showed me some software designs he got from a couple of different big companies. He asked me my opinion about these designs. I remember answering something like that it looks very fancy but for me it didn't make much sense.
He replied that it didn't make sense for him as well and was disappointed that these companies didn't seem to understand him properly. It took about 3 months to get these designs which he thought were useless. So, I asked him to explain me what he was looking for.
Actually a pretty simple thing. He was using paper forms to have his clients order the flowers they need. Think of them as Excelsheets with 3 columns with a list of flower names and besides each column a column for the amount required. He would go to the flower auction at 4 in the morning to collect all these filled in forms, manually aggregate them on new forms, and then go to buy the flowers ordered.
This man had many clients and truck drivers. Some of them only worked or ordered at specific days. It was also important that one could easily indicate which flowers were really important to get.
Then comes this 20 year old guy (me) who delivered a working prototype in 24 hours. You can imagine how happy this man was. He said: if you built this for me I will pay you 10K. In the meanwhile for fun you can borrow one of my sports cars if you want.
I took the deal, drove a big fat sports car for about 1.5 months, I delivered and the man payed me as promised.
The web app I developed is today still being used every day. I don't think there is any other project out there, at least not that I'm aware of, that I have worked on and is still being used today in its form as it was originally developed.4 -
I was struggling with a task on a project and decided to call the colleague, who's working on this project as well (he built it, I am just on-boarding) to get some advice.
Literally the first thing he asked me was: "have you seen whom this task is assigned to?"
Fuck! So I spent about 1.5 hours on not finishing a task that I shouldn't have worked on in the first place. Great.5 -
Well, I was Always into Computers and Games and stuff and at some point, I started wondering: "why does Computer Go brrr when I Hit this Button?".
It was WinAPI C++ and I was amazed by the tons of work the programmers must have put into all this.
13 year old me was Like: "I can make a Game, cant be too hard."
It was hard.
Turns out I grabbed a Unity Version and tried Things, followed a tutorial and Made a funny jet Fighter Game (which I sadly lost).
Then an article got me into checking out Linux based systems and pentesting.
*Promptly Burns persistent Kali Live to USB Stick"
"Wow zhis koohl".
Had Lots of fun with Metasploit.
Years pass and I wrap my head around Javascript, Node, HTML and CSS, I tried making a Website, worked Out to some extent.
More years pass, we annoy our teacher so long until he opens up an arduino course at school.
He does.
We built weather stations with an ESP32 and C++ via Arduino Software, literally build 3 quadrocopter drones with remote Control and RGB lighting.
Then, Cherry on the top of everything, we win the drone flying Contest everyone gets some nice stuff.
A couple weeks later my class teacher requests me and two of my friends to come along on one of their annual teacher meetings where there are a bunch of teachers from other schools and where they discuss new technology and stuff.
We are allowed to present 3D printing, some of our past programming and some of the tech we've built.
Teachers were amazed, I had huge amounts of fun answering their questions and explaining stuff to them.
Finally done with Realschulabschluss (Middle-grade-graduation) and High school Starts.
It's great, we finally have actual CS lessons, we lesen Java now.
It's fuckton of fun and I ace all of it.
Probably the best grades I ever had in any class.
Then, in my free time, I started writing some simple programs, firstvI extended our crappy Greenfoot Marsrover Project and gave it procedural Landscape Generation (sort of), added a Power system, reactors, Iron and uranium or, refineries, all kinds of cool stuff.
After teaching myself more Java, I start making some actual projects such as "Ranchu's bag of useful and not so useful stuff", namely my OnyxLib library on my GitHub.
More time passes, more Projects are finished, I get addicted to coding, literally.
My days were literally Eat, Code, sleep, repeat.
After breaking that unhealthy cycle I fixed it with Long Breaks and Others activities in between.
In conclusion I Always wanted to know what goes on beneath the beautiful front end of the computer, found out, and it was the most amazing thing ever.
I always had constant fun while coding (except for when you don't have fun) and really enjoyed it at most times.
I Just really love it.
About a year back now I noticed that I was really quite good at what I was doing and I wanted to continue learning and using my programming.
That's when I knew that shit was made for me.
...fuck that's a long read.5 -
I started at a company to develop an "uber" clone. Hired by the company's cto. I was happy initially as i had been unemployed for a while but that's because i didn't see the shitstorm coming. The task was build this using php, well 2 weeks later and db locking issues because mysql only allows 100 connections and the website takes over 200mb per request, i tried using the meteor framework, a lil better but the orphaned process would require me to reboot every 2 days. So enter erlang, built in 3 weeks works amazing problems none here... Well in comes the cto (which came in once a week). Apparently he had been reviewing my code and didn't understand it. He couldn't understand no for loops etc and demanded that it be made understandable to a normal dev. Did normal devs write uber no. Anyhow i spent the next 6 Weeks refactoring trying to make elixir looks like imperative programming, he finally gave up, so now I'm deep committed writing an API, finish in a week cto comes in and "why aren't you using patch" i don't need it, well another day implanting a patch api that will never be used. Ok done. Now we have a meeting with the investors who i worked in the same building with and they want a frontend built. I explained i was a backend dev and they needed a uiux expert. Next week cto comes back with this jquery fire pit and stolen bootstrap theme and take me with implementing it. This time we scrap the api change some of the backend logic and implement rest from the 90s one static page per request. After 3 months working with jquery I'm let go because of finical issues. I told them i was a backend dev but they didn't listen if the cto would've gotten a frontend expert things would be different but what to expect from a cto who's coding legacy is creating WordPress plugins.
Hopefully things will be better soon I'm tired of living on the streets.5 -
Hi guys! This is my first rant, please be easy on me.
This is for all who always rant about how horible old codes on existing systems are, compared to what new tech they knew and how better they are as programmers compared to the seniors in the team and how they could have done it better... im getting an impression that it's either your a newbie on a corporate world or a freelancer that has not worked well with a system whos been there for ages... first, most of us devs thinks that they can do better than the previous ones, it is a never ending curse for us proud race but as time goes we would also regret our decision..2nd: cost.. migrating a battle-tested / fully functional system to a new tech would take time and money including training, which the management wont agree unless of course you do it for free.. 3rd: standards.. the company has built a pretty solid standards that changing to a new tech would affect it..there are so many more reasons that the only thing we can do is accept our fate.. coding is fun until the system grows to become an abomination that even its creator regret doing it... it's not our fault, blame the marketting guys! :D
Thank you for reading!12 -
— I got bored and built a CLI tool for fetching movie subtitles yesterday night.
— What for?
— Well, to get movie subtitles.
— Alright...
...
—... I, I built it...4 -
IBM. Fucking IBM. I have not heard ONE person say “We should totally become an IBM shop!” Because only people who were already STUCK with IBM when better options presented themselves still use IBM bullshit. And those people... ooooooh those fuckers are in SO MUCH denial. “Yeah but IBM does such-and-such too.” YEAH? Well your business model shouldn’t be built on businesses held captive to your antique bullshit. That shit is Stockholm syndrome. Textbook, fucking Stockholm syndrome. Don’t tell me “It used to be we could only have EIGHT character file names.” THAT SHOULD NEVER HAVE BEEN A THING. EVER. Fucking THINK about it. If you have to justify something based how much WORSE it used to be, that thing probably fucking sucks.11
-
Me to gf: hey hun look what I built! (Shows off new project)
Gf: (sees video playing in background) oh that's so cool! Did you do that? (Points at video)
Me: no, but look at this! (Shows off feature)
Gf: oh... well that's great hun, I'm so happy you are doing what you love -
Hi! 😀 Great to meet you!!! I hope you are having a fabulous day 🐝. My name is John Doe 👔 at the TechyHelp 🤲 company. I know I might not look like much 🤪, but I will do my very best to make sure 🫵 YOU get my best service 👨🔧 to your hearts content 😌. I am sorry that this problem has been causing you pain 😥 it must be so awful dealing with this 😖 I can’t even imagine 🫣. I feel for you deeply 😮💨. It is my duty 🫡 and I will make sure to give you exactly what you are asking for and more. I am aching 😩 to satisfy you so you don’t feel anymore pain. I want to give you 🫴 so much pleasure today 🤤 to make sure you never have to think 🤔 about this problem ever again 🥰.
Upon applying some of my sleuthing 🕵️♂️ skills to use, I found that to restart your computer, press and hold Alt + F4
Let me know if this solves your problem!
I really hope I entertained you today 🥺. It is my pleasure ✨ to give you the most satisfaction possible, and I love that u came to me first 🤓. I know sometimes these problems can get built up 🥴 and really explode 🎊 💦 when you least expect it. So I hope I relieved some of that pressure today ☺️.
If you enjoyed my performance today, we would love to hear your feedback! 📝 Please sign up at the form below so that we can call you 📱 and hear about your experience 🌝. You can also take the 69 question survey on how well I serviced you today 😏.
Have a blessed day!
Stay safe!
Hope your life is amazing!
Happy pride month!
Peace, love, unity, respect!
Hugs and kisses!
Thanks a million!
- John27 -
During my first internship, my boss had me build a social network type of platform for doctors, all by myself, using Drupal 7. I was like 'aw yeah sure!'...*sigh* younger me...
While I was working there, he didn't have any particular input on the project other that the occasional brainstorming session, where he would tell me things that big firms do (Facebook, Twitter etc.) that should be implemented. It was 2012 so you can imagine that many standard concepts of today, were making their first appearance back then.
I remember that he was sitting on his desk, a little further next to mine, watching a video about how to treat your employees like mine-digging goblins, in a way that would bring profit to the company. He didn't notice that the volume was loud enough and that I could hear what the video said. Still to this day, that moment was one of the most awkward experiences I had in any workspace.
Well the project turned out to be a really well-built prototype and then canceled because reality hit me and I left after my internship ended, even though he told me that he wanted to hire me and have me work on the project full-time.
So happy to have been there, just to learn to avoid people and places like that in the future, it really paid off (seriously, this is the type of stuff that you have to experience in order to armor up in the future).2 -
Someone I know quite well just told me that they have a hard drive with a S.M.A.R.T warning and "the internet says" that he can fix the problem by running this amazing built in windows tool called "chkdsk" (he literally learned about this today, as a long-term windows user) or by reformatting the drive.
I've told him that neither of those methods will work, since it is a hardware fault that is being reported by S.M.A.R.T.
He said that there is hope that it'll work, since someone on the internet said so.
ಠ_ಠ5 -
Not about favorite language but about why PHP is not my favorite language.
I recently launched a web shop built on Prestashop. I found that some product pages are so god damn slow, like taking 50 fuckin' seconds to load. So I started investigating and analyzing the problem. Turns out that for some products we have so many different combinations that it results in a cartesian product totalling about 75K of unique combinations.
Prestashop did a real bad job coding the product controller because for every combination they fetch additional data. So that results in 75K queries being executed for just 1 product detail page. Crazy, even more when you know that the query that loads all these combinations, before iterating through them, takes 7 fuckin' seconds to execute on my dev machine which is a very very fast high end machine.
That said I analyzed the query and now I broke the query down into 3 smaller queries that execute in a much faster 400 ms (in total!) fetching the exact same data.
So what does this have to do with PHP? As PHP is also OO why the fuck would you always put stuff in these god damn associative arrays, that in turn contain associative arrays that contain more arrays containing even more arrays of arrays.
Yes I could do the same in C# and other languages as well but I have never ever encountered that in other languages but always seem to find this in PHP. That's why I hate PHP. Not because of the language but all those fucking retarded assholes putting everything in arrays. Nothing OO about that.2 -
Kevlin Henney said it best. Old is the new new. Tech goes in cycles. Lambda functions aren't new, they've been around since the 70's. Microservices aren't new. Linux is built out of small applications that do one thing, and do it well.
So what can you do that is "new"? Different. Learn a new domain. You're front end? Do back end. You're back end? Do some DB. You're full stack? Do some ML.
At the same time, finding the time to do those things is hard. I barely manage to do my job with other stuff going on.
You can also try to be better at what you do day to day. Find someone that's better than you. If you're the best in your team, maybe see if anyone needs teaching.
Kevlin Henney talk:
https://youtu.be/AbgsfeGvg3E1 -
Well, everytime I build a pc for a friend I'll always end up telling myself "this is the last time". Not bc I have a problem with building pc's, I love it, but its the "free of charge" 24/7 IT-support my non techy (techii?) friends expects from me after the build is done I hate.
So here's the deal.
A week ago I built a brand new pc for a friend, as usual (bc he's a good friend) I told him that my "fee" would be a couple of beers and the train ticket up. So I got there, built the pc and we hooked it up to his monitor. About 5sec in to windows the screen went black. My friend started to panic, and I started to check if all the components and cables were hooked up right (tho I've done this a couple of times, shit can happen) but found nothing was wrong.
I had to take the train home, cause it got late AF and I live in another city, but I told him to try another cable. Felt bad AF for not being able to help him.
Flash forward 2 days, my friend started messaging me late in the evening, complaining about how he had tried everything and ultimately had to leave the pc at an (as he called it) "proffesional" who charged him 100$.
I felt even guiltier about that one, asked him if he tried to change the hdmi, but he said that's in The hands of this guy now.
Two days later this PC God gave him an answer.
Guess What he told him?
CHANGE THE ***** HDMI CABLE.
Well, shit..
Afterwards he wanted help installing drivers over fb-messenger.
I love my friends, but man why do I do this to myself.3 -
What was your most ridiculous story related to IT?
Mine was when I was quite small (11yo) and wanted a graphics card (the epoch of ATI Radeon 9800), looked at the invoice to know what kind of ports I had in the pc (did not open it), then proceeded to brat to my dad to get me a new GPU
So we where in Paris, we went to a shop, vendor asked me "PCI or AGP?" and said AGP.
Paris > London > Isle of Skye roadtrip followed, then as my dad brought me back home in Switzerland, we opened my pc...
And we couldn't fit the GPU in the basic old PCI port. My Dad was pissed. He frustratedly tried fitting the GPU in the PCI slot, but nope. (He's a software engineer though)
At least the GPU had 256 mb of ram :D
Gave it to my brother 6 months later at family gathering
To this day, my Dad still thinks I cannot handle hardware, although I have successfully built 10+ pc, and still cringes with a laughing smile when I talk to him about it haha
Ah well.1 -
Man, I'm sure there are a million of these posts right now but...
The hiring market and hiring culture nowadays is so damn frustrating. I have a decade of experience in multiple senior/lead/principal roles at both big name companies and high-growth startups, along with a very well-written resume.
Even with this, I can barely get an interview these days. I'll apply to a role that lists qualifications for which I'm an exact fit, and either get a quick auto-denial or just never hear back at all. It doesn't matter if I custom-craft my resume and cover letter to match the job description or just send my standard resume and cover letter. We all love those pandering and patronizing "We know that this isn't the news you wanted to hear, but keep trying! Maybe you'll be good enough for us someday!" auto-denial email.
Sometimes I'll receive a denial, look back at the job posting, that they needed somebody with NLP experience or something, and say to myself "Fair enough, that makes sense." Other times, I'll look at the posting and say "Oh come on, I check every single box." It makes you wonder "What the fuck are you actually truly looking for?"
Sometimes I'll look at the company's current employees and see that almost every single one is ex-FAANG, indicating that the company will almost only hire other ex-FAANG employees (despite there being thousands of other well-qualified candidates out there who are just as talented and skilled as those ex-FAANG candidates.)
Other companies seem to be "brand shopping" for ex-FAANG employees after all the recent FAANG layoffs, hoping to land a bargain on an ex-Google engineer so they can brag that their product was built by the same people who built Google.
Then there's the question of even making it past the ATS and in front of an actual human's eyes. The hiring culture seems to be an ATS SEO game nowadays. God forbid that you didn't include the super secret magic keyword in your resume, else you'll automatically be filtered out and denied.
It's just incredibly frustrating and makes you wonder what kind of candidate you need to be to even get a first round interview nowadays. Do we all need to have a glowing personal recommendation from the ghost of Steve Jobs in order for a 50-person startup to even open our resumes?6 -
I have been working for my current employer about 3 years now. When I first got to work I was asked by another employee to work on an editor for certain types of files. We will call this employee Ed. Because his name is Ed.
Ed is a verifiable genius, and a genuinely great guy to work with. He is amazing with hardware and math. Ed has a need, or shall I say fetish. He wants an editor for some our proprietary files called "Settings files". They are just xml. Nothing special.
However, I have always had other priorities. We actually had a tense moment when I had to tell Ed my boss doesn't want me to work on the editor. I had started looking into working on the editor when my boss said stop working on this file. So since then it had become a running joke between Ed and myself. Well, I think it is funny, Ed smiles, but I know he wants this editor bad. Our boss even suggested at one time that Ed write this editor. He looked into it, but "other priorities" trumped this effort.
Okay, so now it has been 3 years and we still don't have this editor. Then I had an epiphany. Since Ed wants this editor I found an idea for the name of this program. "Settings Editor" is just too mundane. I now think it should be called: "Mr. Edit". I also found that the library we use for most of our development has text to speech built in. So when the program starts I can have it say: "Hello, I am Mr. Edit, the talking Settings Editor". I have never wanted to write this program so badly before. Muahahahahaha!5 -
Ok. FUCK MySQL Workbench.
Most of our products built on MySQL and we just had enough of the tools that we are using for our mysql databases...
We decided to make our own tool :)
If it goes well, we plan to open source it. Would you guys be interested in it?
We planned the following features:
1. Schema editing
2. Schema versioning
3. Update/downgrade script generation to move easily between schema versions
4. Manual/auto sync
5. Might include our own replication solution too...
What do you think?10 -
Anything I (am able to) build myself.
Also, things that are reasonably standardized. So you probably won't see me using a commercial NAS (needing a web browser to navigate and up-/download my files, say what?) nor would I use something like Mega, despite being encrypted. I don't like lock-in into certain clients to speak some proprietary "secure protocol". Same reason why I don't use ProtonMail or that other one.. Tutanota. As a service, use the standards that already exist, implement those well and then come offer it to me.
But yeah. Self-hosted DNS, email (modified iRedMail), Samba file server, a blog where I have unlimited editing capabilities (God I miss that feature here on devRant), ... Don't trust the machines nor the services you don't truly own, or at least make an informed decision about them. That is not to say that any compute task should be kept local such as search engines or AI or whatever that's best suited for centralized use.. but ideally, I do most of my computing locally, in a standardized way, and in a way that I completely control. Most commercial cloud services unfortunately do not offer that.
Edit: Except mail servers. Fuck mail servers. Nastiest things I've ever built, to the point where I'd argue that it was wrong to ever make email in the first place. Such a broken clusterfuck of protocols, add-ons (SPF, DKIM, DMARC etc), reputation to maintain... Fuck mail servers. Bloody soulsuckers those are. If you don't do system administration for a living, by all means do use the likes of ProtonMail and Tutanota, their security features are nonstandard but at least they (claim to) actually respect your privacy.2 -
I've been a bit "removed" from .NET lately and I've been slowly forgetting about it. It's like I grieved a loss, and now I was moving on, for lack of a better analogy. I was just beginning to get used to my new environment of Node JS and PHP. And, recently, I was put on track to complete a full project using Node JS.
And then suddenly a new company reached out to me, interested in my skills, and asked for me to build a simple .NET web app to showcase my abilities.
I got started, and holy crap I forgot how nice it was to be coding in this environment. Everything I had forgotten about switched on for me, like riding a bike. I was done with the app in a matter of hours. It was probably the most productive I've been with a coding assignment in forever. I was beaming with pride at the fact that I could code so fluently despite some time away. Everything here just made sense to me.
After I submitted it to the company for review I sat back and thought, damn, do I have to go back to Node/Express JS? I barely have any experience with it 😂. The only reason I know anything is because I watched a 20 minute quick tutorial on how to build an API. That's it.
I really want my current company to give me projects that are in my preferred language and they aren't and that's killing me right now. I can learn, that's not a problem, but my effectiveness as an employee is completely shot by not allowing me to build in code that I know and understand. I was fuckin hired for my specific coding experience, why not take advantage of what I know?
I should say something to my manager but I know they will just tell me no because they want it to be built in Javascript as it's the preferred language of the Gods.
Joking aside, I don't think they will go for it because it is another language that they would have to manage and maintain if I ever leave.
Oh well 🤷8 -
I fucking hate the design and aesthetics of PC gaming hardware in general. Who the fuck do they design those things for, edgy teenagers? Give me something that looks well built and professional, damnit. Heck, most console designs are much better.13
-
So, first time ranting, sorry if I mess anything up.
When I first started my current job and got introduced to the system we were coding in, something seemed a little fishy to me. Didn't like the system anyway, but at least the language is a compiler language, so it runs quite quickly, right?
In theory, yeah. If the lead dev liked the IDE that came with it. But he has to REALLY fucking hate it, because rather than using it, he codes in plaintext. No syntax highlighting, no auto-indent, nothing. And he's built the entire damn system around doing that. Sadly the compiler is only integrated into the IDE, so what do we do there? Copy the code from the plaintext file to the IDE to compile it there? No no, why would you. The language has a function you can use to compile some code at runtime.
And so he does. Every. Single. Fucking. Script. There's a single main script that runs and finds the correct textfile to then runtime-compile and execute. So we effectively made a compiler language into a massively unoptimized interpreter lang.
I even mentioned that this might be a problem, but I was completely dismissed, so at that point it's not my problem anymore and I have then switched to a different system anyway.
Couple weeks later I heard the same guy complaining that the scripts were running almost the whole night so we'd probably need some better hardware or something.
Well if only there was a really obvious solution that would improve the performance by probably about a factor of 20 or so...13 -
I have a VP constantly harassing my people about some reports that we need to do as per federal law.
The thing is, these live inside of such system that I get to see exactly how many "hits" they get on a yearly basis. The only traffic we have on those sections is of people going ahead and putting the information from our reports there.
That's it, literally. Our user base does not go there. Federal agencies do not go there. No one gives two blips of shit about those sections. Yet she continuously acts like they are the most important thing in the fucking world. To make it better, I was told not to generate actual analytical data from said reports, since people with PHDs will come down on me to ask me who the fuck do I think I am from gauging them with such systems. So shit is a mute point on all fucking accounts.
I told my VP I can generate traffic information to let them know that shit is not really the most important thing in the fucking universe. His eyes glowed.
I don't want to see head rolls, but from staying till the next morning awake trying to give the best to our userbase, and just to be called out on shit like this as if I did not do enough for our people just.....well....it fucking hits man.
The worse part was me literally getting 30 minutes of sitting down after an all nighter, doing something for my users, to get to a meeting the next morning (I should not have driven there honestly) to hear this bitch complain about us not doing enough or not caring or whatever other bullshit she would spew.
I was livid, lack of sleep makes me dangerous. I turned to say something when my boss stopped me and took care of business. I seriously love this man. By all accounts and generational gaps a boomer, but one of the few good golden ones.
I just hate how unappreciated the realm of software development is by people that think that our shit is as simple as making a fucking powerpoint presentation.
Consolidate that with a director from another department taking all fucking glory during a major event of an application that I built by myself with 2 fucking weeks of no sleeping. And shit just gets glorious.
I have considered moving to other places, and heck, have gotten amazing offers, what with having a degree with a big fucking GPA and having the credentials of a senior, lead, full stack and manager role, the sky is the limit. But i know that if I leave then my users suffer, and I just can't fucking have that.
I have heard them speaking about doing something with X app that I built (with my department) I have even heard one of them saying "how is this made?" and a part of me hoped that it would be a good time to grab them and tell them of the field and the things that they can do. But I don't like announcing myself that way, always seemed to presumptuous, so I just smile, fuck yeah, my users are doing their thing with what I built to better their lives, what more can I have?
I have gotten criticisms from them, one recognized me, told me about his pain points and how it makes it hard for him to do what he must. Getting the data from the user base in an effort to make shit better for them drives me, my challenge being "how about this? better eh?"
But fucking execs man, think only of themselves, not the users, they forget about the users. Much like a shitty rock band forgetting about the music, about the fans.
I can't let that slide. But this fucking field. I sometimes fucking hate it, and I hate it because of the normies that don't understand and do not want to understand.
I do way too much, my guys do way too much and all I want is for the recognition to go to them. They do not need the ego boost, but to see my guys sitting in a meeting in which some dumb fuck is trying to drill us for taking to long, not doing something and what not, it fucking pisses me off. As their boss I always stand up and tell bitches off, but instead of learning, the bitches just keep pressing on their already defeated points.
Everything in human life gets fucking erradicated by: humans. People really do fucking suck.
I sometimes wish to go back, redo my diesel tech license and just work there, where I think one would be better of talking to an engine. But no, even then you get people, you have to interact with people, deal with people, and I am so far up my game and in my field that starting from scratch is a fucking mute point.
Maybe I need to keep fucking with stocks, get rich and just keep investing on bullshit. Whatever the fuck it takes me from having to feel the urge to choke a motherfucker in public.1 -
It grinds my gears to no end as to how insanely BAD most Electrical engineering software is. Lets start with Tina. A circuit simulator. A few versions ago it was rather good but now it feel like its built upon more legacy crap than fucking Windows! This causes it to have memory access violations and crashes even when you look at it from an odd angle.
On topic of circuit simulation. LT-Spice! It has less errors than Tina but is impossible to use without being lobotomized first. Who the FUCK decided it was a good idea to reinvent keyboard shortcuts by movin all of them to the F-row at the top of the keyboard. Also there is no option to delete a component. YOU NEED TO USE CUT IN ORDER TO REMOVE IT!
And at last Altium Designer for Layouting and Schematics. Whose license costs 9 grand. No one outside of some companies will buy this because of the price. Altium realized this and made two watered down versions of it. Which dont really get updates anymore. (last one was in 2018) So they essentially made a cash grab from people who cant afford their actual product. There also exist other (and a lot cheaper) products than what Altium offers. The problem is that they dont work well with interoperability. Schematics drawn in one program will look distorted in another or not import at all. And since Altium is the industry standard you got yourself this nice steaming soup of impossible collaboration. Its kinda like Adobe being absolute shit at progressing their software just because they got no competition. Or rather they do but the industry wont switch cause adobe is so engraved into it.6 -
A story about RAM and being... well... not so clever...
I've built a mid-range gaming PC for a friend, based on skylake, with 8GB DDR4 RAM. So I filled up only 2 slots to leave 2 more for upgrade. So he decided to do so.
Later he calls me and says "Hey, can you visit me? My PC won't boot".
So I came and he told me what happened: he found a random RAM stick and decited to put it in. He somehow(wait for it) managed to do it and PC refused to boot. He removed this stick, but PC won't boot anyway.
Soo, when I came, he showed me a stick he found: a random ddr2-533mhz 512 mb stick. Ofc, MB was shocked to see "grandfather" and refused to boot. I looked at the post code, which said ram error, cleared the cmos and it booted just fine.
Check compatability, young builders, and use Google if you're unsure :)9 -
I wish my boss would stop revoking my permissions. He's always saying how these slew of things need to be accomplished, yet, everytime I go to do them I'm at a wall because, despite having permissions for a very long time he decided to revoke them entirely.
It's not like I can't be trusted with them, it's been over 2 years with them, so why the sudden revoke?
I finally sent some snot mail to him informing him I'm unable to complete my tasks without the permissions granted to me (I'm a sysadmin, sec guy, boss is vp of tech), and instead of him granting them yet again he's going to run around and try to hack around the permission requirement so he can avoid giving me them.
Seriously? This is stupid. I was the one who wrote the security design and implementation document, and put all that work in. Now I'm being locked out of the system I designed, built and implemented?
Well, time to look for a new job. If you're a manager, please don't revoke your employees permissions without notice, at random, and try to hack around well-documented security policies. It won't end well!3 -
@Kiki and I built something (99.99% of the work was done by him only)
Since I was 6 month old, I was annoyed by Reddit's front page. While I liked how it remained same for everyone, there were a lot of unwanted subs filling the feed which didn't interest me and moreover were quite annoying.
Hence, I was thinking of a feature where we can filter out subs from the front page. I even made a post back in days and did not get a proper response.
I waited for Reddit to implement but they are just bloating the product now.
So night before yesterday, after I was done fantasising how I save the school from a terrorist attack, I got an idea.
A Chrome extension which can hide a list of subs or keywords we feed to it.
So if I add r/MakeMeSuffer to the list, extension should click on 'Hide' button on the post and it will no longer appear. Well this was the initial logic I had in mind.
I immediately pinged @Kiki and he was like he already has something similar. We experimented and with in an hour or two, he built an extension which worked better than I thought.
He implemented the dark theme as well. Kickasssss!!!!
So now we are here, to share with you and get your feedback on how we can improve this further.
Once the community responds to this, we are taking this to Product Hunt, Reddit, and @Kiki will also publish this on Chrome store.
We are really excited about this idea and many more. So let me know how you feel about this.
https://github.com/mvoloskov/hazmat
Incase you struggle with installation, HMU, after a lot of hand holding from the creator, I am now an expert in installing and managing Chrome extension 🤣🤣27 -
The interface for time input in outlook Web on mobile is driving me crazy!! It's not as if there was a built in control that is well supported in all modern browsers.... Right
1. You can't tap on an hour to select it
2. You can only select by scrolling
3. The scrolling is "smooth scrolling". So you have N O fucking chance to select the time slot you wanted. After too much time has passed you just give up and accept that your meeting will be at 09:57
4. In order to go up in time you constantly activate the"pull to refresh" feature of Chrome.
I'm definitely no mindless MS hater but this I cannot tolerate.6 -
You know what really grinds my gears? When people criticize a programming language but uses edge cases and stuff that can be avoided by using the tried and true "don't be an idiot". Take for instance JavaScript, a language I like and a language that has a lot you can criticize. But I feel like a lot of peoples criticism isn't warranted.
What's that? No ints? Use parseInt or Math.floor.
What are you saying? == works in strange ways? Yes, that's what we have === for.
Type coercion is wonky? Think it's weird how string + int works differently than string - int? Wanna string with number + - + - - + - - etc? Don't! Don't add strings and ints, don't subtract strings and ints. You can't in statically typed languages and you aren't supposed to in dynamically typed
Adding arrays and objects, arrays and arrays, objects and objects etc. is inconsistent? Why are you trying to do that?
Adding floats together gives odd results? Now we're getting somewhere! And Mozilla responded to that with a method called toFixed.
Declaring variables with var doesn't always work that well? Use let and const
Then there's this weird attitude that some people I've met have, where they will complain about the module system and how "well you rely on the community for those packages" as if it's a bad thing. And then coming with the "well you don't know what the (open source) packages do internally" as if I (for the most part) give a shit. Then they'll swear by companies like Zend or Microsoft as if they can't just stop supporting the languages they use. Maybe it's just because I like community content more because of video game mods.
Wanna criticize JS, then there's plenty to talk about. Like the built in date object is basically shit. Or how in NodeJS you can have node_modules in your node_modules. Or how classes don't really have the best syntax. Left-Pad. And so on (it's too late for me to be able to remember much more).1 -
So, I work in a game development studio, right?
We're trying to launch the title on as many platforms as reasonable, because as a social VR app we're kinda rowing upstream.
So far, Steam and Oculus have been fairly reasonable, if oddly broken and inconsistent.
Enter store 3.
Basically no in-game transaction support (our asking prompted them to *start* developing it. No, it's not very complete). No patch-update system (You want an update? Gotta download the whole fsckin' thing!). No beta-testing functionality for most of their stuff ("Just write the code like the example, it will work, trust us!"). No tools besides the buggy SDK (Wanna upload that new build? Say hello to this page in your web browser!).
So, in other words: Fun.
We've been trying to get actively launched for two months now. Keep in mind that the build has been up on Steam and Oculus for over a year and half a year (respectively), so the actual binary functionality is, presumably fine.
The best feedback we get back tends to be "Well, when we click the Launch button it crashes, so fail."
Meanwhile we're going back and forth, dealing with other-side-of-the-world timezone lag, trying to figure out what is so different from their machines as ours. Eventually we get them to start sending logs (and no, Windows Event logs are not sufficient for GAMES, where did you even get that idea????) except the logs indicate that the program is getting killed so terribly that the engine's built-in crash handler can't even kick in to generate memory dumps or even know it died.
All this boils down to today, where I get a screenshot of their latest attempt.
I just can't even right now.5 -
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
-
Built a whole test suite around our Laravel app which has been pointed out to exec as slowing down CI and yielding no value to the user.
Arguing it’s ensuring something our users is using doesn’t accidentally break just gets brushed off as incompetence.
Oh well, I’ll just skip tests in CI and continue writing and running tests on my own as I don’t feel confident just cowboy fixing things.2 -
Oh so day continued....
My boss just asked me before I left... You know that report we wanted automated, you said you'd get it done by today, is it done yet?
Me: well uh who dragged me into a PROD issue because no one else knows how to investigate... EVEN THOUGH I BUILT AND SHOWED U HOW TO USE THEM... SEVERAL TIMES. (no i didn't say this last but that's what went on in my head).
Oh and I figured out what the issue was... -
I don't mind Apple marketing themselves as these revolutionary thinkers and innovators, because I figured most people see behind the marketing but appreciate Apple for what it is. It's a big company that makes well built products, that are efficient and give good support to those products.
But I'm sick to death of tech journalists talking about how every new feature is the death of Android. They have to be kidding themselves if they think what Apple's doing is innovating. Samsung's been designing screens for the bezelless market for a LONG time, and their technology in that is incredibly advanced (it's why if you use their iPhone x you'll be looking at a screen from Samsung!)
They finally adopted wireless charging and pretended it was brand new, but I remember when they came out with the Apple watch, marketing it like they'd broken ground when Android Wear watches had been out for a year!
I don't want people to think I hate Apple, I own a few of their products. I think they're remarkably invested in user privacy; homekit imo is one of the most forward thinking implementations of smart home technology that I've seen, and the new processor in the iPhone x is a Mammoth powerhouse. So, I'm not necessarily saying anything about that, but what I am saying is that they're iñcredible at marketing, but fanboys but are not self-aware can enough to recognize when the Designed-by-Apple hype over shadows the actual objectivity or the situation. There are articles already talking about Apple's wireless charging.
TL;DR I swear to god if an apple fanboy comes at me saying the bezelless design was Apple's innovation, I'm going to snap. I appreciate what Apple does well, but unfortunately people can't appreciate a product without needing to identify with it.6 -
!rant this is just a shoutout, how fucking happy I am. Clean code valued over fast but hacky push of features!
Backstory. I work for a startup. Long story short a guy with an idea needed a developer. I've worked for about a year without pay but now since we're live I get paid. Recently a new field of bussiness came up. I told tge guy with the idea (a.k.a. my boss) that we either could just "hack" the current code to just make it "fit" well kind of... Or refactor our main code base, as requirements where changing at least monthly and we just built on top of the monolith.
Don't get me wrong. It still isn't perfect. However I was able to refactor the main business logic for the last few days, as he understood, it's an investment into the future.
Good guy!
P.S. On another note: happiness or happyness? :O1 -
wk66 {
Don’t pay as much for things that aren’t as important.
}
tl;dr {Mobo won’t POST.};
Backstory:
Me and @Rekonnect built a website a few years ago. So I built a “server” and ran server 2008 on it. Our server was very budget oriented and featured the following:
AMD Athlon X4 860K
Biostar Hi-Fi A70U3P
8GB G.Skill Ripjaws series
Small HDD
R5 220 Core Edition
EVGA 430W
ODD
Over the years, I’ve made many changes. Now it’s a GTX 960 with 3 Small SSDs and one large HDD. No internal optical. PSU is now at 600W from EVGA. Also a really old Sound Blaster sound card just for the fun of it. The case is now a Corsair SPEC-01. Put a T92 CPU cooler and 3 Riing RGB case fans and you’re ready to go. I was getting ready to put a third monitor but haven’t gotten to it.
If you’ve been following my rants recently, you would’ve seen that I was interested in developing iOS apps. Thanks to the team at http://AMD-OSX.com and four days of work, I’ve installed macOS on one of the SSDs. I think.
The computer won’t POST.
I’ve tried everything and nothing seems to work. Well, there goes my hopes and dreams. Let’s hope I can borrow money from my parents to at least replace my motherboard. :(
Ideas/Help?
FYI: I at one point did get 4 beeps in post, the system decided to upgrade firmware, and the BIOS people are American Megatrends.
Anything will be appreciated.9 -
Not mine, but absolutely essential rant:
https://gizmodo.com/programming-suc...
One portion:
"You start by meeting Mary, project leader for a bridge in a major metropolitan area. Mary introduces you to Fred, after you get through the fifteen security checks installed by Dave because Dave had his sweater stolen off his desk once and Never Again. Fred only works with wood, so you ask why he's involved because this bridge is supposed to allow rush-hour traffic full of cars full of mortal humans to cross a 200-foot drop over rapids. Don't worry, says Mary, Fred's going to handle the walkways. What walkways? Well Fred made a good case for walkways and they're going to add to the bridge's appeal. Of course, they'll have to be built without railings, because there's a strict no railings rule enforced by Phil, who's not an engineer. Nobody's sure what Phil does, but it's definitely full of synergy and has to do with upper management, whom none of the engineers want to deal with so they just let Phil do what he wants. Sara, meanwhile, has found several hemorrhaging-edge paving techniques, and worked them all into the bridge design, so you'll have to build around each one as the bridge progresses, since each one means different underlying support and safety concerns. Tom and Harry have been working together for years, but have an ongoing feud over whether to use metric or imperial measurements, and it's become a case of "whoever got to that part of the design first." This has been such a headache for the people actually screwing things together, they've given up and just forced, hammered, or welded their way through the day with whatever parts were handy." -
Please fix this one tiny bug they said. Don’t touch everything, it works, sans the bug, they said. Should take a day or two they said. Please don’t do anything drastic, they said.
Well....
The entire environment is fucked. The current commit for that repo is fucked, and the previous one was just an empty Xcode project. How the fuck can I debug something that isn’t even running? The machine it was built on by the previous engineer that left the company had multiple Xcode projects for the same thing and all of it refused to compile. What?! How the hell it got released to the wild and being used by hundreds of clients is still beyond my comprehension. Adding insult to injury, I eventually discovered there were memory leaks up the wazoo. Great!
So, please for the love of fucking God, leave a working repo for your colleagues before you decide to jump ship!1 -
So first of all merry delayed Xmas and of course wishing you all a happy new year.
Now...
I always loved designing and coding, yes I actually like it, I must be absolutely mental or something.. I finally after pushing myself through hours upon hours of courses, finishing most within 15% of the allotted time, and doing more then was requested, I finally found a job, related to front-end development. You might think "Gee; good for you buddy, you filthy commoner.." Well; it didn't last all too long, I basically after nailing the interview process got my first day there within a few days, now I am absolutely stoked and my nerves are shot, plus the 4 cups of coffee aren't helping. I literally was so nervous to do well on my first day, that I slept for only one hour, literally one bloody hour.
I get into the office where I am greeted by an amazing laptop, I mean high-end gaming 360 no-scope all over the place gaming. I sit down and start on getting all my tools ready to go (they let us use whatever IDE we wanted, which I thought was amazing) after getting my IDE and the plugins and all the emails/Slack etc setup, I then get told to get a Dropbox account. I assumed the Dropbox account was just there to share things quickly with the designers, we would obviously be using Git right?! Well; no not exactly, actually not at all - we all used the Dropbox account of one of the bosses, I swear everybody pushed and pulled stuff all the time, a copy of the boss's passport was in there as well, and they had projects from and up to 3 years ago, still in there... It took my Dropbox 3 bloody hours to grab as much as it could to actually allow me to get started...
I then to my absolute dismay notice that I would be working on a prefab of a prefab, basically the only thing I would be responsible for, is to adjust the animations and aligning elements.... Aligning and animations.... Fine, I guess it could be worse right? Started going along with it, using a framework that I never heard of before, till like a good 3 days before starting there called "Greensock" which is amazing I must admit, could've helped me allot on my solo-projects. Problem was; we had designers who wanted things, that just looked plain horrible, it was never 'on-point' so to say, maybe it's just me being a perfectionist but it just looked wrong.
Finally got it done after struggling with the prefabs and what not, then the day was almost over and I finally got to go home, fortunately dodging the drinking that was occurring around 4 in the afternoon in the middle of the office, it wasn't beers or anything of the sort - but hard liquor along the lines of Wodka and straight up Gin. I fortunately had a personal issue I had to attend too, so I got out of there before things got too crazy and they went out for dinner stumbling all over the place.
Well this wen't for a few more days (minus the drinking), with 8 being the exact number of days and my grievance list only kept growing. I was for one a junior-developer and thus with them knowing was supposed to get training from our lead, however; that never occurred instead said 'lead' would leave early or be completely absent on most days, leaving me to mess around with prefabs that did my head in, with no comments nor any indication what it did or should've done, I spent hours just adjusting one line of code at a time to see what would happen.
Eventually they told us to work from home only, so I did - did a project here and there and then got told they wouldn't keep me on board any longer, stating I was too inexperienced and they didn't have enough work (which was a load of bs) and that I lacked "office experience" whatever the heck that means, I was always sociable and hell I ever cracked people up, kept a neat and orderly list of things that needed doing, I even contrary to most commented on my code, so the next poor sod wouldn't be going through 'try by error' hell that I wen't through.
Either way; I currently have been feeling absolutely wrecked in terms of motivation, that job would've solved my financial situation and allowed me to finally do what I wanted to do. Instead of doing some random dead-end job each week or month, I would've had a steady income and something I could've built on.
But to add some positivism to this endless and too long of a rant... I'm currently going through a boot-camp and doing a small Linux based course on the side, this little thing isn't going to hold me back; yeah it will be tough, but then again most things don't come easy..
Thank you for reading and I hope you have allot and I mean allot more luck on your first job.5 -
What's it like being part of the FOSS community?
Well here's the average comment section on everything related to FOSS anything...
"Why would you use that, I use XYZ and it's so much better"
"Have you tried ditching that proprietary shit and go in favour with X because it's built by developers for developers"
Guys... I get it, but have you ever considered that the whole point of FOSS is freedom? So you know, freedom of speech, choice and opinion? -
Never ever directly edit the source code of libraries.
Not to the smallest bit.
I just did that and forgot about it, then I wondered how a decent library like I used can produce such gobshite as it did. Several hours (!) later I discover my little "debug output" line in the library's source.
Goddammit I must have a well built table. And a well built head.2 -
Product owner (who is also the application administrator): please build feature to allow administrators to create automatic alerts to be sent to application users
Me: ok
Feature gets built, tested and deployed to production
Two months later:
PO: I've noticed in our monitoring tool that there haven't been any alerts sent out to users. What's going on??
Me: well have you created any automatic alerts?
PO: umm, no. How do we do that?
Me (inside): 🤦2 -
So fuck this. Fucking fuckers fuck this.
We've been having massive performance issues with a nested drag and drop component. I built this abomination about a year ago and had to rush through it due to my colleague not thinking the change was necessary, even though the previous revision was even worse. It's been going strong for a while, but since a month ago it has started to perform badly. Makes sense, because it was hacked together, and wasn't made for the amount of data that it's handling now.
So the other day I presented the issue to my colleague, telling him exactly what the problem was, and that we'll have to rewrite quite a bunch of the code to get it working. Today when I bring it up again he is really negative towards the changes because they are so big, and don't really want me to do them. He is, however, super stressed about the performance issues and starts digging around in the code himself. Code that he's never touched, don't understand how it works, and has said he's not interested in learning about. He even says he sucks at frontend and Vue himself. So we sit there from morning to lunch, digging through the code together (I had to do it as well because he came nowhere). And what do you think the conclusion was? The same thing I told him a few days ago.
So what now then? He still don't want me to do the changes, but still wants it solved! How the fuck is that supposed to happen?!?
Worst part is that we're the only two developers in the company, and our boss has little IT experience. That puts me and my colleague at the same hierarchical level, so all decisions has to be cool with the both of us.
So fuck this. Fucking fuckers fuck this.8 -
Found "hyper" in the "built with" section of electron.
me: hey, that looks cool
*downloads hyper*
*opens hyper.app*
me: well... fuck this then
hyper:4 -
More of a rave than a rant.
My Dad was having some trouble with a game disconnecting on the PS4 and he read somewhere that it might be a problem with our home router. I didn't think it would be, as every other game works fine. But there was no talking him out of it. And to be fair the current router WAS kind of old.
So I have a look at the one he's decided to buy and it's some massive triple-antenna beast for well over a hundred pounds. I felt like such a weapon might be overkill for 2 people in a house, but did say that it would definitely help with connection issues in some rooms and I kind of wanted to play with it.
So he got it and oh am I glad he did. It has so many fun toys, including a built in VPN. Right now I live abroad so there's a few services I used at home that I can't access, I was literally just considering buying a vpn the other day. I found this while setting up port-fortwarding for my Raspberry Pi to run a discord bot I'm building. I had condisered putting a VPN server on the Pi but this works too!
It also has built in DDNS from ASUS, which IS cool, but our IP hasn't changed in years so I'm not sure we'll need it. I set it up anyway just in case though!4 -
For all the hate against windows I built over the now 8 years using linux as my main os. Now I feel windows 10 is quite good.
I got a little beefier desktop lately, been using just laptops from the last 8 years(8D) so I got this urge to get a desktop for gaming, I bought an entry level machine. ryzen 5 2400g, put my lovely linux mint and... the fucking machine was hanging up when the load was too high, and the load was too high too often because react/node etc.
I gave up in less than a day, I just did a quick search and some people said about secure boot or whatnot, some other claimed that ryzen cpus had no problem with mint, I got fed up quickly and did not try any solution with linux. Then I installed windows 10, installed the godamned drivers from the provided dvd ... since then it was a breeze.
The dark mode is gorgeous and no hanging up at all... I'm just sad that mint did not worked soo well. I wanted to have consistency between my laptop/desktop and I loved mint above everything. But well, some things improve while you're not looking at them, win 10 is quite good, I'll keep my desktop as gaming/programming pc with win 10, and well, the laptop will be auxiliar programming machine.
¯\_(ツ)_/¯5 -
So I spent the last 2 hours trying to figure out why my co-workers source when hitting the API I built was not working. They kept saying that the problem was the API and I kept saying that it's their implementation.
Turns out it was their implementation and as well as the API. Their implementation problem was not setting the "Accept" in the header. The API problem is how Laravel will return a JSON error response ONLY IF the "Accept" is set in the header.
I actually documented this into the API documentation but it's obvious that none of my co-workers read that you need to set the headers correctly. I think the more scary thing is that they didn't know the difference between Accept and Content-Type!!7 -
I remember at a company that I was working as a Drupal developer, I had finished building a website (both designed and developed it) using Drupal 7. I was very satisfied with the result and the way the company was operating, I had to show it to the project manager and he would say if it was OK to show it to the boss and then I would contact the client to say that we are finished.
When I showed it to the PM, he provided some changes from his personal "I know everything" book and after I made them, we both went to the boss' office. Keep in mind that I had built the website following the clients notes and preferences (custom sliders, certain color swatches etc.) and I was on point.
So, after we entered the office, we sat and I was pumped to hear good news. But, not a minute passed since the page loaded and the boss was clearly unhappy with the result, and more specifically with the changes that the PM provided (not even my fault). When he finished talking, I tried to explain that I followed exactly what the client said and executed accordingly, without the changes that the PM had put on the table. Suddenly, the boss' face was angered and turning red(ish). He started shouting at me and saying that I was not experienced enough to know what I am saying (I was 21 years old at the time), and that they had the experience to criticize if the website was ready or not and if the client would like it, pointing out that I wasn't capable of knowing what the client needed.
I was bursting in my chest, I felt a fire burning with anger and righteousness, but I turned my face down and apologized. It SUCKED! It felt SO bad. I took the notes that he said (which changed 90% of the website's design) and after that I called the client.
I felt some kind of vengeance when the client started shouting at the PM, when he saw the website. He yelled and said that, the design that the boss chose, was not remotely close to what the client had requested.
Next day after I finished the website with the design I had provided, the boss was looking at me like a (proud) wet cat, saying 'well done' but not another word, while entering his office.
Well, at least the client was happy at the end! That's all that matters, right?4 -
What time do you get up on work days? I'm starting to think I should have me time in morning (reading, learning, coding my own things) before going to work.
I've think I've come the the conclusion that this job/team is sorta chaotic and tedious and there's no skill growth. Not learning anything new. Usually just something broken, integrate some new feature, build something that I've already built before but differently for this specific case. Nothing fun or challenging, or new.
And also tired of trying to be a "role model", make things right. I tend to like to keep things orderly, documented, well tested and clean but everyone else seems to just bulldoze their way to get whatever they need, leaving a mess behind... It's been like 2yrs already but the technical debt seems to be growing not shrinking...17 -
I decided to do a daily Blender render just as a creative challenge for myself. I was so excited because I built an awesome computer this year and was eager to put it to use, only to be hit with seemingly random BSODs and crashes a couple seconds into the render.
As it turns out, my CPU cooler is woefully inadequate to handle 32 threads running at once, which was the cause of my crashes. Turning the render threads down to 8 keeps the temps low enough to finish the render.
In a way, it's a relief because the alternative was a problem with my $900 GPU. I've ordered a bigger CPU cooler and well reviewed heatsink paste which will hopefully fix it. If not, I'm going to have to go water-cooled, which I really don't want to do.34 -
Some hacker went through a lot of trouble to get around a minimum order amount on our site. And they’re still hitting us after Cloudflare issued a bunch of blocks. Well, there are some back doors I have to finish closing. I guess I’m lucky I’m just inheriting this site and I’m not the one who built it. But I’m still unlucky because I have to fix this mess. But damn hacker, why’d you go though all this trouble to get around existing validation. Go find another site to charge $1 amounts and test your stolen credit card info. Pretty please 🥺
-
I just finished designing an entire asset management pipeline and christ on a fucking pogo stick, if it isn't convoluted.
Theres a lot of game engines out there, but all of them do it a little different. They all tackle a slightly different problem, without even realizing it.
1. asset management
2. asset change management
3. behavior change management
4. data management
5. combinatorial design management.
6. Combinatorial Behavior management
7. Feature completion
ASSET MANAGEMENT is exactly what it says on the tin.
ASSET CHANGE management can be thought of handling the import, export, formatting, platform specific packing, and versioning (including forking) of an asset.
BEHAVIORAL CHANGE management is a subset of asset management, because code is a subset of assets (depending on how you define 'assets'). The oldest known example of this is commenting and uncommenting code.
Or worse, printf debugging.
This can be file versioning, basic undo services, graph management of forks and mergers, toggles for features or modules, etc.
DATA management is about anything that doesn't fall into the other categories, everything from mission text to npc dialogues, quests, location names, item stats, the works. Anything you'd be tempted to put in a database, falls under this category. Haven't yet seen many engines offer this as an explicit built in tool as of yet, because the other problems are non-trivial as is, so this is a bit of low hanging fruit that gets handled by external tools, or loaded from formats as simple as json.
COMBINATORIAL DESIGN management is the idea of prefabbing, blueprints of broader object design using nested prototypes of existing game objects, to create more complex, reusable set pieces. Unity did this well. GM does this in part.
COMBINATORIAL BEHAVIOR management is entity-component systems, plus tooling to make it easy to add, remove, and configure components and their values on entity blueprints, also not uncommon. Both stencyl and unity do this. GM has a precursor to this in the form of configurable fields, but these fields are not based on component scripts attached to objects.
FEATURE COMPLETION is that set of gameplay mechanics or styles of design that an engine naturally makes easier to include or build in a game.
I don't think I'm aiming for all that, but I think at minimum a good engine has to do asset management, behavioral change management, prefabs, and entity-component systems with management tools for that. And ideally, asset change management.8 -
!rant
How to earn a lot of money as a programmer?
So this question might sound a little naive and too simple, but earning a lot of money is what we all want after all right? Collecting experiences from people in the business should be a good idea.
So this is the position I am in:
I am a German student in my 13th year of school (which means I will graduate this summer) and I am very interested in information technology. I know C++ pretty well by now and I have built a rendering engine for a game I want to make using openGL already, which I am very proud of.
I would love to turn this passion into my profession and thats why I plan to attend a dual course of computer science next year (dual means that I will be employed at a company (or similar) in parallel to the studying course).
But what direction should I be going in if I want to make big money later on? I am ready to spend a lot of time and work on this life project but I don't know which directions are the most promising. I hate being a tiny gear in a huge machine that just has to keep spinning to keep the machine alive, I want to be part of a real project (like most people probably) and possibly sell a product (because I think that is how you really make money).
Now I know there is no magic answer to this, but I bet many people here have made experiences they can share and this could help a lot of people directing their path in a more success oriented way.
I personally am especially interested in fields which are relatively low-level and close to memory (C++), go hand in hand with physics and 3D simulation and are somewhat creative and allow new solutions. (These are no hard lines, I just thought I should give a little direction to what I know already and what I am interested in)
But really, I am interested in any work you are likely to earn a lot of money with.15 -
Just graduated university and got a high paying internship (well, high paying to someone whos never been paid) in my field of chemical engineering, feeling quite lucky
Cant wait to upgrade my PC, it was a beast when I built it in 2012 but nowadays running chrome and android studio is enough to make it commit suicide
Goals for 2019:
Publish my first android app
Learn web development
Become an AWS guru
Not spend all my income on PC parts
Ive watched a bunch of web development crashcourses/trends and (comming from desktop appplication development) omfg what a nightmare mess of confusing stuff but alas i shall prevail or die trying5 -
Just learnt perfectly what the below joke means:
'I wanted to improve the world, but they wouldn't give me the source code'
I really don't understand why the world is full of obsolete processes that people fight against daily when changing things ever so slightly could take the weight of the world off their shoulders. The same thing goes for my work, I work in finance, and we use a remote app built in Windows forms (not xaml or wpf, the original forms) and it's insecure, slow, buggy, and crashes whenever you press ESC (yes, really). Even worse, I've offered to rewrite their whole network for nothing, just the improvement to people's lives. And they say no! WELL FUCK YOU FOR BEING A PLAGUE ON THE FUCKING WORLD! Why do people insist on staying behind the times when the world could be such a beautiful place?!?3 -
We are so fucked up at our company:
While the support for our client hardware is running out, our operation departement has just found out that Windows 7 is no longer supported on new HW. Well, that for itself is not bad, but we have a really old tool for reporting our daily work. And because that mo*fu*ing piece of customized software still runs in 16bit mode, it will not run on Win 10 anymore.
Alternative solutions are too expensive, so I see that we will have to port that crap somehow from 1997 to 2017 ourself 😲 Replacing is not an option because there are a ton of Excel sheets connected to the database, even the company balance is made with that data (and also in Excel). At least it is our CEO which has built that crap. So he has to pay for his twenty year old sins!4 -
My old mechanical keyboard broke, so I had to buy a new one. I'm Brazilian, so the local market for mech keyboards is either limited or very fancy (fancy as gaming keyboards).
So I got this amazing Logitech G610, which unfortunately is not sold with blue switches here, only brown ones. Very solidly built, well made, good extra keys and whatnot.
BUT OH MY, who ever thinks those LED effects are good for normal usage after 5 minutes of playing with them??? VERY distracting! <o>12 -
Built an iPhone app for free for a local nonprofit. This directly lands me a part time well paid internship offer.
And they say you should never work for free3 -
>Discovers a new low level profiling tool that could help us at work with stuck process debugging and gets all hyped
>Installs on test machine, tool doesn't work
>Wonders why. Oh. Needs a kernel module to work, compiled and loaded
>"Well, its my test machine... Guess that's no problem..." but... my hype died down a bit. Kernel module installation just for a new tool that aggregates all other commonly used tools? eh... Maybe it will blow me out of my shoes still
>Installs and loads the module
>Tool works. Turns out its just a htop-like tool, with shortcuts to launch specific other profiling tools like strace/ltrace/lsof/netstat/ss etc...
"Oh... That's boring. Maybe it has all those tools built in at least?"
>Tries to run ltrace - tool exits as ltrace is not installed
Lol
>Installs ltrace and launches tool again. Tries to ltrace a process and
>Nothing. Nothing happens. For seconds... Then kicks me off of SSH
WTF?
>Tries to ping machine... silence
Did... our net go down again? (Having issues due to a storm going over our area these few days)
>Pings google and... gets instant reply
More wtf
>Pings the hypervisor the machine was running on
Works like normal
Oh... Oh no. Please tell me it didn't!
>Logs into the hypervisor UI, checks machine state
Running OK
>Opens machine console aaaaand... Yep. Stacktrace as well as a lot of kernel mumbo-jumbo... It took the machine down to kernel panic.
I never went so quick from "We need this tool deployed everywhere" to "Omg I need to get rid of this crap as soon as possible" lol.
And just for those wondering, it was sysdig.1 -
Who the hell invented this industry where smartest individuals are being evaluated by those who didn't understood technology well enough and moved to management (it's usual scenario, though there are exceptions)?
Can you imagine surgeon performance/quality being evaluated by some clerk who may or may not had studied medicine earlier, but wasn't good enough to become surgeon itself so ended up in hospital administration.
Or can you imagine bridge engineer having his/her performance/quality evaluated by someone who had built bicycle shed 5 years ago?
Damn, yet in software industry it's pretty normal.
(Don't confuse management with performance evaluation. I know management have different scope and duties, but idea that management does the performance evaluation is so damn broken.)6 -
AndroidOS.
Why: well it's built on Linux kernel so first good thing.
Due to open source everyone can get cheap (under $50) smartphones running on Android with millions of app to access. We can create custom ROMs.
Your one app can target billions of people around the world and so much more...
PS: half of the Play Store apps are shit.5 -
In This Rant: A mildly satisfying piece of mind story.
Using code to prove yourself right is a hell of a drug.
A few weeks ago I whipped up a tiny program that downloads configs from hardware we manage. Since the vendor's API documentation is hidden behind a pay wall, my method of extraction is different. It results in bigger files, but testing showed it to still be valid.
Enter today. Interns at work downloaded a config to load onto a spare machine and it won't work.
"TheCapeGreek, your configs don't work"
I was confused since I tested the files when I built it and it worked. I am also currently fleshing out that download utility's features so the fear that I've been wasting the past 2 weeks on improvements is looming.
Last 15 minutes of the day and nothing else to do so I figured I might as well whip up a string comparer. The smaller file's content is scattered in the big file so a direct diff won't work.
Code it all, quick hardcoded proof of concept code, bit it got the job done. I was right, my bigger file is still correct!
Turns out the issue was with the machine they were configuring. They found this out before I finished my test code, so I'm off the hook already, but it was good to have piece of mind haha!1 -
My boss: now that the other project is stable, you can start working on this new one. It has to be built from scratch in Angular.
Me: is there any particular reason we have to make it in Angular? Last one in React+Redux worked very well and I am getting used to it.
My boss: Just to give it a try.
And Angular steep learning curve is not even the worst part. Lack of design and direction is.2 -
So, I've had a personal project going for a couple of years now. It's one of those "I think this could be the billion-dollar idea" things. But I suffer from the typical "it's not PERFECT, so let's start again!" mentality, and the "hmm, I'm not sure I like that technology choice, so let's start again!" mentality.
Or, at least, I DID until 3-4 months ago.
I made the decision that I was going to charge ahead with it even if I started having second thoughts along the way. But, at the same time, I made the decision that I was going to rely on as little external technology as possible. Simplicity was going to be the key guiding light and if I couldn't truly justify bringing a given technology into the mix, it'd stay out.
That means that when I built the front end, I would go with plain HTML/CSS/JS... you know, just like I did 20+ years ago... and when I built the back end, I'd minimize the libraries I used as much as possible (though I allowed myself a bit more flexibility on the back end because that seems to be where there's less issues generally). Similarly, any choice I made I wanted to have little to no additional tooling required.
So, given this is a webapp with a Node back-end, I had some decisions to make.
On the back end, I decided to go with Express. Previously, I had written all the server code myself from "first principles", so I effectively built my own version of Express in other words. And you know what? It worked fine! It wasn't particularly hard, the code wasn't especially bad, and it worked. So, I considered re-using that code from the previous iteration, but I ultimately decided that Express brings enough value - more specifically all the middleware available for it - to justify going with it. I also stuck with NeDB for my data storage needs since that was aces all along (though I did switch to nedb-promises instead of writing my own async/await wrapper around it as I had previously done).
What I DIDN'T do though is go with TypeScript. In previous versions, I had. And, hey, it worked fine. TS of course brings some value, but having to have a compile step in it goes against my "as little additional tooling as possible" mantra, and the value it brings I find to be dubious when there's just one developer. As it stands, my "tooling" amounts to a few very simple JS scripts run with NPM. It's very simple, and that was my big goal: simplicity.
On the front end, I of course had to choose a framework first. React is fine, Angular is horrid, Vue, Svelte, others are okay. But I didn't want to bother with any of that because I dislike the level of abstraction they bring. But I also didn't want to be building my own widget library. I've done that before and it takes a lot of time and effort to do it well. So, after looking at many different options, I settled on Webix. I'm a fan of that library because it has a JS-centric approach. There's no JSX-like intermediate format, no build step involved, it's just straight, simple JS, and it's powerful and looks pretty good. Perfect for my needs. For one specific capability I did allow myself to bring in AnimeJS and ThreeJS. That's it though, no other dependencies (well, at first, I was using Axios because it was comfortable, but I've since migrated to plain old fetch). And no Webpack, no bundling at all, in fact. I dynamically load resources, which effectively is code-splitting, and I have some NPM scripts to do minification for a production build, but otherwise the code that runs in the browser is what I actually wrote, unlike using a framework.
So, what's the point of this whole rant?
The point is that I've made more progress in these last few months than I did the previous several years, and the experience has been SO much better!
All the tools and dependencies we tend to use these days, by and large, I think get in the way. Oh, to be sure, they have their own benefits, I'm not denying that... but I'm not at all convinced those benefits outweighs the time lost configuring this tool or that, fixing breakages caused by dependency updates, dealing with obtuse errors spit out by code I didn't write, going from the code in the browser to the actual source code to get anywhere when debugging, parsing crappy documentation, and just generally having the project be so much more complex and difficult to reason about. It's cognitive overload.
I've been doing this professionaly for a LONG time, I've seen so many fads come and go. The one thing I think we've lost along the way is the idea that simplicity leads to the best outcomes, and simplicity doesn't automatically mean you write less code, doesn't mean you cede responsibility for various things to third parties. Those things aren't automatically bad, but they CAN be, and I think more than we realize. We get wrapped up in "what everyone else is doing", we don't stop to question the "best practices", we just blindly follow.
I'm done with that, and my project is better for it! -
Unlike the built-in ** operator, math.pow() converts both its arguments to type float. Use ** or the built-in pow() function for computing exact integer powers.
Well who knew?
source: python docs3 -
FUCK YOU FUCKING AZURE FUCKING FUNCTIONS:
EITHER LIMIT MY NUMBER OF TCP CONNECTIONS (before violently crashing)
or
FORCE ME TO USE THE GODDAMN PORT-PISSING, BARELY-MULTITHREAD-USABLE, SETTINGS-IGNORING EXCUSE OF A PATHETIC BUILT-IN HTTPCLIENT ON FUCKING CRACK (Seriously .net people fix that shit).
But not both... both are not okay!
If your azure function just moderately uses outgoing Http requests you will inevitably be fucked up by the dreaded connection exhaustion error. ESPECIALLY if using consumption plans.
I Swear, every day i am that much closer to permanently swearing off everything cloud based in favor of VM's (OH BUT THEN YOU HAVE TO MAINTAIN THE VM's BOO HOO, I HAVE TO BABYSIT THE GODDAMN CLOUD INFRASTRUCTURE AS WELL AT LEAST I CAN LOG IN TO A VM TO FIX SHIT, fuck that noise)
I am in my happy place today. At least I'm having great success diving into minecraft modding on the side, that shit is FUN!1 -
A toss up between COSMOS or the Linux kernel, COSMOS because it's just amazing to see an open source kernel built on .NET from scratch (besides boot loader) and Linux kernel because well... Do I need to explain?2
-
I have nothing but good things to say about the book “Building Microservices” by Sam Newman.
Very well written, high-level look at Microservices. It took a lot of the assumptions I had built and dissected the different options and approaches with drawback included.
Now, onto “Building Microservices With Go” by Nic Jackson!1 -
This is a warning 😡
A tale first...
I being the kind soul I am offered my help to another web company .. their site was built poorly and took 20 seconds to load I told them the fixes they needed in the hopes they would give me the work to do it that was the agreement after all 😡
Instead they stole my ideas and did them themselves now they have a good website 😡 fully working
Let me be clear if you fuck me over like this. I. Will. End. You.
I hate scum like this ... I'm calling him tomorrow I will give him the benefit of the doubt, if he says something like 🙄 well tough.
There won't be a website the next day... 😡
😈20 -
So I finished a contract (developing some webapp for a ministry in a foreign country). Well that's done. And they have the code and the fully built package that they just need to upload to a webserver.
Then I still get mails 'we were not able to deploy, plz fix your stuff!' without more detail.
Sometimes I loose all my faith in my fellow developers over there. Wow.1 -
It's was the forth year of my college, in the corner of the world in south India, I wanted to something to combine both medicine and the coding that I learnt, I started learning about heart murmurs, it's basically a skill based diagnosis that only 1 in 20 heart specialists can make by hearing the heart beat and listening to a small murmur that happens during the systolic cycle or the diastolic cycle. I wrote a program to learn a lot of sample murmurs and try to find (very bad hand made logic) the similarities between two wave patterns, the problem started with noise so I went out and built a new stethoscope with a carbon mic inside a normal stethoscope head and try filtering the sound at source (worked well enough at that time) I then tried to find people to test it on, but alas I was not able to find patients as doctors are not supposed to reveal them etc. I wanted to show them visually how a murmur pattern would look like and I stole some code and made a plotter for the wav file and presented everything. By that time I got a lot of close amazing friends involved and they helped me solidify the project and we won the best project award and I got my first gold medal of my life at the end of my academic life :) it was one of the best moments of my life. Second only to the joy of getting married to wife. May be third if I put getting a job in Microsoft India Development Center.
I still wish I could dig that code up and write it properly with what I have learnt today but work is never ending and I find great problems to solve everyday which I know I can make a difference, may be when I get retired I will dust out that CD with the decades old c++ code and write one last program...3 -
I got a contract with this schools to build a student portal,
I do all the needful and the project whatever guy insists that I use their current shared hosting to host this MERN stack application.
first of all, cPanel is my least favorite place when it comes to deploying, I actually dont do deploying I just hand it over to whoever is the IT guy there.
I discovered there's no provision for nodejs in their current plan, I go through all the stress of contacting the shitty customer support and the process of squeezing out useful information from them.
I'm only doing this because the project whatever has refused to pay me until their site is deployed. throughout the process of creating this project I had setup continous deployment on heroku and netlify and I had to beg this guy to look at the changes and review them.
well, today I asked the former guy that built the current site for the login details to the schools dashboard on the hosting providers site and he says he used his personal details for it, according to him projects from other organizations are there too.
I swear I'm going to loose my shit, freelancing sucks3 -
!!!rant
Most exited I've been about some code? Probably for some random "build a twitter clone with Rails" tutorial I found online.
I've been working on my CS degree for a while (theoretical CS) but I really wanted to mess with something a bit more practical. I had almost none web dev experience, since I've been programming mostly OS-related stuff till then (C). I started looking around, trying to find a stack that's easy to learn since my time was limited- I still had to finish with my degree.
I played around with many languages and frameworks for a week or two. Decided to go with Ruby/Rails and built a small twitter clone blindly following a tutorial I found online and WAS I FUCKING EXITED for my small but handmade twitter clone had come to life. Coming from a C background, Ruby was weird and felt like a toy language but I fell in love.
My excitement didn't fade. I bought some books, studied hard for about a month, learned Ruby, Rails, JavaScript, SQL (w/ pg) and some HTML/CSS. Only playing with todo apps wasn't fun. I had a project idea I believed might be somewhat successful so I started working on it.
The next few months were spent studying and working on my project. It was hard. I had no experience on any web dev technology so I had learn so many new things all at once. Picked up React, ditched it and rewrote the front end with Vue. Read about TDD, worked with PostgreSQL, Redis and a dozen third party APIs, bought a vps and deployed everything from scratch. Played it with node and some machine learning with python.
Long story short, one year and about 30 books later, my project is up and running, has about 4k active monthly users, is making a profit and is steadily growing. If everything goes well, next week I'll close a deal with a pretty big client and I CANT BE FKING HAPPIER AND MORE EXCITED :D Towards the end of the month I'll also be interviewed for a web dev position.
That stupid twitter clone tutorial made me excited enough to start messing with web technologies. Thank you stupid twitter clone tutorial, a part of my heart will be yours forever.2 -
Well it's been a while I suppose. Sorry I haven't been around for over a month guys. That's what happens when you're a full-time student with a full-time job.
Unfortunately, or fortunately depending on how you look at it, I need some advice/help. I've been working on a senior thesis project that I'm trying to deploy but I'm going crazy trying to figure out how to do it. It's a Spring Boot Java application built as a micro service. I've tried for the past 5 days to get this sucker working on Cloud Foundry with no luck. I've got a deadline to get this fucking thing live in 2 weeks and I'm getting closer to being in a panic. My question basically is, would it be easier to learn a different service/build my own solution from scratch then trying to fuck around with this? I'd appreciate anyone's advice who's had more experience with deploying Java web applications.
Here's a link to the project if anyone's interested: https://github.com/starrynights89/...21 -
Rant against a new religion: the Agile Religion, started by the Agile Manifesto: https://agilemanifesto.org
This manifesto is as ambiguous and open to interpretation as any religious text. You might as well get advice from a psychic. If you succeed, you'll start believing in them more. If you don't, then they'll say you misinterpreted them. The whole manifesto just re-states the obvious with grandiloquent words.
For example: "Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale." What does this say REALLY? To me, it just says "deliver software, try to be fast." Great, thanks for re-writing my job description. Of course, some features take "a couple of weeks", while others "a couple of months". Again, thanks for re-stating the obvious.
"Value *working software* over _comprehensive documentation_"
Result => PHP
"Welcome changing requirements, even late in development."
I'm okay with this one as long as the managers also `welcome the devs changing deadlines, even the night before the release date`. We're not slaves; we're more like architects. If you change the plans for the building, we're gonna have to demolish part of what we've already built and re-construct. I'm not gonna spring just because you change your mind like a girl changes clothes.
"Business people and developers must work together daily throughout the project."
Daily? Fine. ONCE a day, sure. But this doesn't give you the right to breathe down my neck or break my concentration by calling me every couple of mintues.
"The most efficient and effective method of conveying information to and within a development team is face-to-face conversation."
- Not if you could've summed up that meeting in an email.
- Whereas that might be true for clarity, write that down.
"Working software is the primary measure of progress."
... is how you get a tech debt the size of the US's.
"The sponsors, developers, and users should be able to maintain a constant pace indefinitely."
Have you heard of vacations?
"Continuous attention to technical excellence and good design enhances agility."
So you're telling us "do good". Again, thank you for re-writing my job description.
It's just a bunch of fancy babble, more suitable in poetry than in the dev world. It doesn't provide any scientific evidence for any of its supposed suggestions, so I just won't use it3 -
Well this is the thing. I have been starting to replace a lot of my shit with Golang. I think it is a great language because of one small fact: it is a boring language.
With this I don't mean that it is not incredibly fun to use. It is and honestly I feel that a lot of the concepts that I had from C passed quite nicely with some additions. The language does not do anything special and there is no elegant code. It works in a very procedural fashion without taking into consideration any of the snazzy things found in JS, Python, c# etc etc. Interfaces and struct make sense to me, way more than oop does in other languages. I don't need generics with the use of interface parameters and I have hadly found a situation in which I have to strive too far away from the way things are done with Go to be happy with it, then again my projects are not hard or by any means groundbreaking (most of them deal with logistics or content management and a couple of financial apps that I am rewriting in Go from work)
The outcome is fast and easy to read since idiomatic go is for the most part very readable(no people...single letter variable names are by no means a standard and they should feel ashamed from it)
I miss the idea of a framework, but not so much and the docs and internal code for Go is just way top inviting. I believe the code to be readable enough than anyone that has gotten used to the syntax and ideas of the language can just jump in and start learning. This is the first language that I have learnt from studying the code as it is inside of the standard lib, the same I cannot say for any other language or framework.
Also, it play beautifully nice with vs code.
I dunno man, I feel that I am doing something wrong. I have projects built in Node, php, python, ruby and spring java as well as .net core and I still find Golang way more appealing simply because it goes harder than Python with "one preferred way" to do things.
The lang does not make me feel like a pro, i certainly develop in it at pro speeds, but it was made with beginners in mind to built fast and concurrent apps, with the most minimal syntax possible.
I guess my gripe with it is that it gets shunned from this, saying that it ignored years of lang research to make it as dumbed down as possible. Which it did, lack of generics amongst other things certainly make it seem like, but I will not say that it was poorly designed. Not at all, I believe it is a testament of amazing engineering. To be able to create such a simple yet amazingly powerful language.
Wish there were more to it. Wish there was a nice gui lib or a ml framework comparable to the ones offered by python and java. But I guess such things will come with time.
I feel stupid with this language.
And that is fine.5 -
Needed money for my company, not enough clients to support business on SaaS alone. Took on a 5k / month job building a platform that competes with my SaaS (more niche, less generic). Also sign up new client who that company's owner is part owner onto my current SaaS. Win / Win?
I do a lot of custom work to my platform to fulfill their needs, which is why I ran out of time for the 5k / mo project. I did these customization for free. Losing money to keep client, but also improving my system.
Work gets busy, I need to drop the 5k project. Client is upset I am working more on his other company (he is not majority owner). I return 1 month of funds to the owner and say I cannot continue.
Owner threatens to make other company that he is part owner stop working with my software if I do not complete project. Blacklisting...great. I agree to work with an overseas developer to do it and PM it for 3 months at least. Making nearly nothing from it (now 1k / month for PM), working nights to deal with India, losing sleep...
Other company suddenly folds due to conflict of egos with that SAME owner. Users drop from 16 to 1. I drop the project, no more strong arming me. Everything is a loss, all effort and money lost for nothing. Bad bet..however...
Owner becomes 100% owner of the other company, and of the software company. I transition him to PM his own project, he still uses my software because It doesn't, nor will it, ever do what the one he is building does. Also, partners from previous company break off and use my software again. New Client. #profit.
But holy hell was it stressful in the interim. People's business tactics are disgusting. Stay calm, play it neutral. Win. Sometimes you have to do what you don't want to do in order to succeed...at least for a little bit.
I was so scared that how he screwed his partners he would screw me over as well if I built one of the modules I have planned for my System, but haven't done yet.
If I did it for him first and then built my own (totally diff codebase) I really didn't want to run into any legal issues considering the schematics he has now are mine, but I didn't finish that part of the system for him. He is obivously highly competitive. Even though he wanted me to, and still does, want me to run his company for him.
Who knows, maybe in the future. To be CTO / COO of two SaaS CRM's in the same space may make sense. But I will never sell my software to him or partner with him. Too much drama. Avoid the drama. Be careful out there fellas.
If you are a creator, people will take advantage of you in every way imaginable. Read the fine print, read the people, document everything. Don't put yourself at risk. -
https://techcrunch.com/2020/06/...
Yet another tool to "empower" management into thinking they are able to do in days what takes engineers years to accomplish.
All this is going to do is create technical debt for developers to consume when management is promoted for a "job well done".
Fuck.3 -
Hello devRant!
Man its been a while, i havent logged in here in like 4 years.
Recently ive been getting into home-labbing, and i thought to myself
"all of these people on youtube/reddit run Plex on pre-built NASs that have awful celerons and whatnot, we can do much better!"
And by "much better" i meant a bare metal k8s cluster.
My hybris knows no bounds apparently.
Turns out this shit is quite hard.
Really gives u an appreciation of just how much stuff cloud providers magically abstract away....
My final goal is to run stableDiffusion on this thing, even know i know full-well the moment i try Nvidia will fuck me raw with some hidden enterprise subscrition :) -
!rant
For a bunch of application redesigns that we are doing at work I am letting the other two developers in my department help with selecting the stack. Normally, we work with Java and PHP, and while they seem to enjoy php I find them concerned at the possibility of making it more Java centric.
So I compiled a list of examples of different tech stacks that are not only more modern (cuz our Java stuff is old JSP stuff) but also simple to learn and use. Mind you, the point is to make this a gradual change, not just rewrite the entire house from scratch.
the list contained examples in:
Python: django and flask
Ruby: Ruby on Rails
Java: Spring Boot
Golang: Small self made mvc framework I built, nothing fancy on it, it uses templates and shit, didn't make it api centric
Node: Express examples in both vanilla JS and TypeScript
php with Laravel.
Since we work with php most of the time as well I imagined that they would be more inclined for Laravel, but I was wrong :P they seemed to like the Node Express route and the Golang route more than anything else with Python and Django being close.
Personally I know that there is more to selecting a stack, but initial perceptions make for a lot of things in selection of the stack.
Pretty excited, if they gauge everything considered in regards to what we have and we found Golang to be a clear winner it would give them the chance to add a nice and competitive tech to their resumes.
not a rant, or anything per se, just wanted to share some stuff with y'all2 -
I started fully exploring different aspects of tech in a middle school technology class where the teacher gave me a good grade as long as I did something that could be useful or interesting. I learned how to design webpages by playing with inspect element, and then decided to make my own with Notepad. One of my friends showed me how to use Sublime Text, and I found that I loved programming. Other things I did in there included using two desktops with NIC's wired directly to each other with an old version of Synergy and a VNC server, and at one point, I built a server node out of old dell Optiplex desktops the school had piled in a storage room.
Last year in high school, I took a class on VB.net and made some money afterwards by freelance refreshing legacy spaghetti, and got burned pretty badly by a person offering $25,000 for a major POS to backend CMS integration rewrite. The person told me that I had finished second, and that another dev had gotten the reward, but that he liked my code. A few days later, I was notified through a *cough*very convoluted*cough* system of mine by a trigger that ran once during startup in a production environment and reported the version number as well as a few other bits, and I was able to see that *cough*someone*cough* had been using my code. I stopped programming for at least six months straight because I didn't want to go back.
This year in high school, I'm taking the engineering class I didn't get into last year, and I realized that Autodesk Inventor supports VBA. I got back into programming with a lot of copy-paste and click-once "installers" to get my modelling assignments done faster than my classmates. Last week, one of my friends asked me to help him fix his VB program, which I did, and now I'm hooked again.
I've always been an engineer at heart, but now I'm conflicted with going into I.T., mechanical or robotical engineering, or being a software developer.
A little long, but that's how I got to where I am now. (I still detest those who take advantage of defenseless programmers. There's a special place for them.)7 -
A Rant about my past self!
I thought I never did this shit myself! While restoring a old game server with it's various plugins and infra, I found this randomly.
It was for a Admin Panel that was never used in anything commercial. And I think no one ever saw this reponse anyway since I built the frontend that used it as well.
I'm still embarrassed that 16yo me did this exact thing, I think is just plain stupid today.
https://youtu.be/nSKp2StlS6s11 -
I need to estimate how much ram and CPUs my team will need next year for our apps... That have yet to be built.
We load a lot of data feeds with batch processes running on a few large machines, some can use like 30 GB RAM at times...) which should be a lot less if we get the data real time I hope...
But wondering how to estimate well... I sorta did a worse case analysis where I just multiply and sum # CPUs/memory* nodes*approx apps...
Comes out to be like 600 CPUs and 800 RAM... So wondering if that's ok...
RAM is ok but # of CPUs is way higher bc now all the apps basically run on their own machines...14 -
God damnit!!
Just got a team assigned for the course I follow and the codebase they work looks like someone shit on the floor and dragged it all over place. No consistency, no clear structure.
The project has to be built in PHP (which is fine by the way) following the principles of MVC. Did I say the codebase looks like shit all over the place? Well that's exactly what it is!!
They use $_SERVER['DOCUMENT_ROOT'] everywhere!! In every fucking file!! Why the FUCK would someone possibly want to do that??
I know I'm not perfect, but what the fuck!!
Now comes the most weird thing. They have to work on a remote server without SSH access, so working with FTP is mandatory. This is because the school won't setup ssh. That's fine by me, but because of that they don't use git!! They upload files directly to the production server. They merge everything manually. I asked why they didn't use git and the answer was so fucking SHIT!! "Because the teacher wants to see who uploaded to the server.."
First off all: what happened to git blame? Second: Later I heard that there is only one FTP account, so all the things they said where just bullshit!!
The fuck.
Tomorrow I'm going to try and convince them to use git..1 -
Anyone ever just get seriously discouraged about peoples view on how easy/difficult it is to code?
A client has requested that they want a system built so they can create surveys and send them to people via email all in one tool. Im not a good front end designer but I know how to develop it. So they hired a designer to send me screen mockups and I will develop them. Easy enough.
This is where the bullshit starts... The designer was supposed to send me the V1 designs last Friday so I could begin building. I told them that I could have a rough version of some pages (with placeholder text and whatnot) ready for the following Friday (tomorrow). However the designer didn't send me the designs until 5 minutes before we were all meeting yesterday. We were all going over the designs in the meeting and this is how the conversation went (roughly):
Client: Wow these designs are amazing, I cant wait to see what it looks like when it functions. Are we still going to have a demo version by Friday?
Me: Well seeing as I just got the designs today, Ill have to look them over and get back to you on a new timeline.
Designer: Yah sorry about the delay, designing can be tricky sometimes.
Client: No worries, I understand. However I want to stick to the same timeline and have the demo by Friday.
Me: Well as I said, Im only getting the designs now, this is the first time I'm seeing them so I'll have to look them over and re-evaluate.
Client: Yeah but the designs are done so it will be easy for you to code it by then. It's all right there in front of you. I need to run, excited for Friday! Bye!
Designer: Bye!
Me: ...........
-- I know its partially my fault for saying I could have a demo done by Friday assuming the designer would have it done on time but COME ON. I hate when people say something is easy when they have no idea what it entails or how to even do it.1 -
"When an engineer builds a building, it's very well built, but it's so ugly that the people tear it down. When an architect builds a building, it's very beautiful, but it falls down" - difference between systems engineer and systems architect
You must combine both, but the latter (beauty) is less important.8 -
I have been given the displeasure of updating a company's WordPress website which was built and (sort of) maintained by another company which ended up closing down. NOTHING WAS DOCUMENTED. Almost no comments added anywhere. Not even a description of the what a particular file does. File names are basically completely random. There are 3 versions of the same theme this company made and no indication of which one is actually being used. On top of this; they used plugins and modified them, so they cant even be updated without them breaking. As well; after looking around it seems they used jQuery mixed with Angular (or maybe the plugin creators did this?). The website isnt mobile friendly either; one of my tasks was to see what I could do with fixing this. Seems basically impossible based on the complete mess of a project this is.
All this being said, I just graduated from Post Secondary and have almost no experience working with WordPress, There arent even other developers to help assist me on this project.....
Gonna be quite the experience.1 -
You may soon have a new operating system from Google to run on your Raspberry Pi. Details are still extremely sparse, the only description on the GitHub page is “Pink + Purple == Fuchsia (a new Operating System)”. But, here’s what we do know:
The new OS, called Fuchsia, will be based on Magenta, which is in turn built on LittleKernel. That means that, surprisingly, Google will not be using a Linux kernel for the new OS but something more like an embedded RTOS. Although Google is targeting embedded systems, the possibility of being able to run it on a desktop has been mentioned, so it may not be too minimalistic.
Google’s Travis Geiselbrecht has named the Raspberry Pi 3 specifically as one system it will run on, and said that it’ll be available soon. But, it seems Google is aiming to make it run on a variety of ARM devices (both 32 bit and 64 bit), as well as 64 bit PCs. This is a direct effort to compete against other commercial embedded operating systems that are currently available, and especially on IoT devices.1 -
Fuck Google! I'm trying to write a fucking parential app that I can install on my little sisters phone, because I won't download something that is meant to monitor activity on a child's phone when I am capable of writing one. Problem is, I test it on my phone which has Android 10, because I am not keen on testing with a slowpoke out of wood brick that the target phone is. Android 10 does not let you do a single shit that is needed for a parential software. You try to turn on airplane mode to prevent messages from arriving and such? Well.... nope, you can't. Okay... airplane mode is too drastic. Let's try turning off WiFi and Data. Fuck me, you can't do that either. I gave the app fucking system permissions and It laughs in my face when I try to access some simple shit like... WiFi state. Miserable. I wonder if it will let me mute the fucking volume on the phone. I guess It won't, because "You shouldn't set these things on a user's phone.". Well, fuck that. That's exactly what I need. That old brick does not have built in parental settings. Jesus.19
-
We are all about structures, clean code and many other things that make our life easier, right?
Well... It's not all white and black...
As talked many times, projects can be rushed... Client budgets can be low at the start and only then grow...
Let me take an example:
Client X needs a tool that helps his team perform jobs faster. They have a $500 budget. So... Testing, clean architecture and so on - are not really a viable option. Instead, you just make it work and perform that task as needed. So the code has minimal patterns, minimal code structure, a lot of repetitive parts and so on.
Now... Imagine that 3 months pass by without any notice and clients are ultra happy with the product. They want more things to be automated. They contact developers and ask for more things. This time they have a bigger budget but short timeframe.
So once again, you ignore all tests, structure and just make it work. No matter what. The client is happy again.
A year passes and the client realizes that their workflow changed. The app needs total refactoring. The previous developer has no time for adjustments at this point and hires a new company. They look at the code and rants spill out of their mouth along with suicidal thoughts.
So... What would you do? Would you rant about "messy project" or just fix it? Especially since people now have a bigger budget and timeframe to adapt to changes.
Would you be pissed on such a project?
Would you flame on previous devs?
Would you blame anyone for the mess?
Or would you simply get in and get the job done since the client has a "prototype" and needs a better version of it?
---
Personally, I've been in this situation A LOT. And I'm both, the old and new dev. I've built tons of crappy software to make things work for clients and after years - they come back for changes/new things. You just swallow the pill and do what is needed. Why? Well, because it's an internal system and not used by anyone outside their office. Even if it's used outside the office - prototyping is the key. They didn't know if the idea would work or be helpful in any way. Now they know and want it done correctly.6 -
Just got an internship a few days ago. The manager threw a project at me. I have to do it alone. It's a user-system (registration, login etc.) The front-end is ready. And I have to build its back-end in PHP. I started to draw the project on paper (pseudocode) and then asked a few questions about design patterns to jump into coding. They recommended me Laravel. I'm good at PHP (procedural) and have done some basic OOP. I've actually built a few projects in Python using OOP. But I've never used any framework (yeah, I know). So I started to learn Laravel and realized that it's very different than normal PHP (procedural or even normal OOP). I almost don't write any normal PHP code. This makes me confused. But I have to learn it fast and well, and finish the project to hit the deadline and get the full-time job. I'm desperately looking for any kind of help to learn Laravel more effectively! I've googled and got some recommendations. But I need more live help from devs directly.5
-
[rant]
From the bottom of my heart I swear the thing that frustrates me the most in this industry is over complicating simple things. Making simple ideas overly convoluted makes me cry.
I mean why have a dedicated Windows server, that you login to via Windows Remote desktop, just to edit a Word document in a bespoke program that is running running Microsoft Word inside it anyway. Why not just just Word? Why spend a year developing such a system for a problem that simply doesn'y exist.
I asked what benefit this has over me just editing a Word file myself on my laptop. In short, their answer was none.
The other apparent benefit to the system was the ability to jump to specific parts of the document. Well after showing them how to do a table of contents, they saw no need for their existing system.
I'm amazed sometimes how simple ides get discussed to death, unnecessary mammoth systems get built, that ultimately solve a problem that does not exist.
[/rant]3 -
Client email: so you know that custom thing I wanted on my website that you made and I refused to pay for? Could you just send me the code, I'm gonna write my own.
*Staring at screen in disbelief and laughing*
Even if you were an awesome client, and you had paid, I still wouldn't just "give you my code" so you can write your own. You hired me to do it because you CAN'T not because you didn't want to, not because you're lazy, but because you are not mentally capable of making your own.
Me: I'm sorry, but I'm not sure you would even know where to start with this, what was wrong with the one built?
Client: I wanna put the code in my Salesforce so it can run the API request and automatically make a lead for me.
My code takes fields from a form, runs the data over to the API, gets the response, allows for user confirmation that the information is correct, and then sends all the relevant data to Salesforce as a lead.
Me: But that's exactly what mine does, just does it from your website where users will be entering the info, and once they've confirmed it you get a Salesforce lead.
Client: well some of my leads come from other places and I want to simplify everything.
Me: no, not possible, sorry.
If you didn't have 25 different websites for one company then all your leads would come from the same place and it would be simple.2 -
ok, fuck people. i mean the people who talk about things that are a big deal. you don't need to take a course in html/css to build a website, you need documentation.
people act like programming languages are a whole separate literacy. they're not. it is not a big deal, nor an accomplishment of any significance, to learn any language to a basic extent. variables, control flow, functions and scope should not be considered challenging topics, and people should stop bragging about them. i'm pretty sure this is because programming is new. as people, i think when something is new we tend to think of it as more complex and harder to understand. basic programming is not that.
ok that was a tangent from my real point. college is a scam. anyone can learn anything from books and the internet. any time you want to learn about something, go to google, and search "${my topic} site:*.github.io" and you'll have a page about that topic written by someone who is knowledgeable and passionate of the topic. colleges don't teach people how to think like these books/websites do. and i'm fucking sick of people who'd rather see a degree then a portfolio. fuck them shits bro. i can distinct my smart friends because my smart friends speak logically and enjoy becoming smarter. i would take the kid who watches aerodynamics videos on youtube and then built a plane over a kid who studied and got a five on his ap physics exam. watching then doing is better learning than watching and repeating. after all, creativity is not at all measured in our grades, and i'd like to argue that sometimes intelligence isn't even measured. i mean, people can say they're good at math, but the kids who talk about fibinnoci numbers and why there can never be two primes more than 7 (i if i remember properly) integers apart or the ones who prove cryptographic algorithms. i guess what i'm trying to say is the dumb kids aren't dumb and the smart kids aren't smart (well not that) but kids who are passionate and just do something instead of waiting for their degree to do the same thing are the best and brightest. i forgot what i was talking about. sorry it is almost 2 am and i am intoxicated , and i don't believe i got my point across very well either.9 -
I just remembered some of the "harmless" dev-related insults I've received over the years:
1) most recently, I shared a tool with an acquaintance cuz it bears the same name as something he put together a while back. Background: this guy likes to come across as having infinite programming knowledge and brags to his fb pals about being an expert in multiple languages. While trying to make sense of the cryptic docs of the package I sent him, he implies I don't know what the iframe or html5 canvas are. Claims not to elaborate what package does cuz the docs is meant for advanced desktop and mobile devs
It hurt because this is one of few people who know I built suphle, yet thinks so lowly
2) as you can tell from the first point, I share links I consider interesting with relevant contacts. I'm also quite vocal about my (mostly contrarian) takes on occurrences within the dev space that I'm familiar with. One day on the laravel board, this dude is reprimanding me and asks me to take the opinions I read on blogs and tabloids with a pinch of salt, implying I didn't form them independently but was influenced by what was written by some stranger online
It hurt because I expected him to know better. I felt I'd sufficiently proven to have actually built things that informed my school of thought
3) the oldest happened many years ago but I remember it now because the perpetrator called me out of the blue last week. I was teaching his boss, who managed an office but preferred to keep his student status hidden, to avoid being thought incompetent. This caller guy just so turned out to be learning js at the time. Fast forward some years, we all disbanded. He'd landed a dev job and was doing well. So I sent him one of those js gotchas, asking him to explain his answer
After he replied, I told him his answer was close enough but it had more to do with js passing closure arguments by reference. Dude responded that he knew that was the correct answer but wasn't aware I knew what closures meant. That stung me like hell back then. I missed his call and didn't know who owned the contact, so I searched my chats and saw that last interaction. Pain all over again3 -
Not so much a problem with the way CS is taught, but I think it's a problem that a lot of people put emphasis ONLY on programming (and maybe data structures and algorithms) and ignore things like Computer Architecture or Theory of Computation.
Most of the CS syllabi I've seen are built very well, but many students (and some teachers) seem to ignore a bunch of subjects because they don't contribute to making them "hireable". -
At a previous job, I worked on a multi-vendor e-commerce website. It used Magento2 as an API and a separate application we built with Node, Express, and React that consumed it to avoid using Magento's frontend.
The whole stack used should be a rant in itself but our checkout process was dependant on work done by some contractors in India. In short, this entire checkout process would break multiple times a day with no way on my end to fix anything, and that's what I had to reply with every time a bug ticket would come in; which is honestly the worst reply ever to a huge issue like that.
After several attempts of pitching the idea and being turned down for building the checkout in-house to remove the dependency and work on even streamlining the process, the product manager of the brand said as quote "Well the checkout isn't really that important".
At first, I was kind of speechless. How is the functionality of actually buying a thing in an online store NOT important? Shouldn't that be the most important?
Then I realized over time that the only thing they cared about was being a Nascar version of a website, essentially being a canvas of ad space that sellers on the marketplace could buy and paying money just to list their items.
I hated working on that project, and that made it so much more soul-crushing. Gotta chase that revenue right? -
Years ago when I was a kid I was into making things to solve problems. Earlier in my life I remember as a kid seeing a neighbor shove 120VAC into the ground to get worms to come up to the surface. I also remember taking a worm and slapping it on one of the posts and shocking the shit out of myself. Apparently that lesson did not stick.
As a teenager I wanted a device similar to this. So I wired a 120VAC plug and cord to a 1/4" audio connector. I threw this in a box and forgot about it. Years later my sister went through my things looking for a power plug for a synthesizer we had. It had an audio 1/4" plug for headphones. She told me she plugged this cord she found of mine into the synth and it started smoking. She went to pull the plug out and shocked the shit out of her. I don't think that the synth ever worked correctly after that.
Well, today I was thinking fondly about that story. I mean, who wouldn't think fondly about shocking the shit out of your sister (she didn't die, so its okay). However, it was dangerous. Really really dangerous.
The lesson I can take from this memory is this: if you know a software interface (or electrical) is not safe then don't build it. Someone will try and use that shit years later and really fuck some stuff up. I have to wonder. What kind of software traps have I built in the past that are yet to be discovered?3 -
Here is a personal project I've been working on lately. It's not public, but just wanted to share. It's a custom chatbot I created using a LAMP stack. Its built on top of a framework called Program-O to handle the knowledgebase storage and processing along with some basic NLP. I added the web speech api functionality myself so it supports recognition as well as speech synthesis. Anyways, pretty proud of this one.7
-
At my previous company, we used tools from all over the place. We switched between tools at will. Sometimes, some team would decide to use some tool while the rest of the company would use something else. The worst part was that there was no Single-Sign-On (SSO) either. Everyone would need to have an account on all of these said tools. It was chaos.
I realized that being integrated into one environment (even though would have the cost of a vendor-lock-in) was the best option to have because in that case, we wouldn't have to deal with operational hurdles like having integration from one tool to another. They would just come baked-in with the whole environment. That's how GSuite (formerly Google Apps for Work), Atlassian and other players succeeded - they gave a complete suite of services / software that integrated well with each other. You could jump back and forth between services without having to bother about integration with other tools. They'd all be there wherever you wanted them to be. Even cloud providers so that opportunity and built on it - Amazon Web Services (AWS), Google Cloud Platform (GCP), Kubernetes (in itself).
Another example is a company that used Jira, Confluence and Hipchat but for some dumb reason used Gerrit for their code review / hosting. Eventually, they realized that managing the integration with the Atlassian tools was far more expensive than getting bitbucket and migrating completely into the Atlassian environment.
It's always the integration that matters. Everything else is secondary. -
So I have finally decided to integrate Trello with the small internal CRM app I built for my work. Everything seems well on my Linux dev machine.
And now when I try to update our app at our server, I realized our server only has php5.6 and I need php7.1 and our server is windows. :3
Lucky today is Thursday.
Hope everything is done before the last bus to home. 🙏🙏🙏4 -
I actually like writing documentation. It gives me a break in a different pace, gives me time to refocus on what I've built and hopefully make it useful for others as well.2
-
I studied computer game development at a university that had pretty low standards. It was perfect for a slacker like me. I enjoyed it. Maybe it was implied that you'd have to study on your own and that completing the courses wasn't enough to make you a competent developer, but maybe I'm a bit slow or something because that never occurred to me until after we were finished.
I was taught enough programming and database stuff to land me an entry position job at a consulting firm before I was able to complete my thesis. Technically I dropped out, I guess, since I don't have a diploma.
I built a portfolio consisting of different projects/essays I'd completed/wrote for different courses. That, together with my charm and boyish good lucks made me get the job.
Anyways, even though I learned more practical stuff my first year on the job than I did my 3 years of uni it was a very good experience. It helped me understand what I was interested in so that I could pursue that later and some of the people I got to know would help my career later.
I mean, if education wasn't free (except living expenses, books, etc) I'd might say that I had been better off just taking a year of egghead/udemy/Indian Guy On YouTube classes to learn what I needed to land myself a job. But I'd need to know which courses to take so I'd probably find a group of courses that someone else put together. I guess it would be nice to take those classes with other people so that you can work together, learn from each other, and make some friends and connections as well. Oh, that sounds kinda like uni ¯\_(ツ)_/¯2 -
Hey this is Linuxer4fun or BinaryByter, you might remember me as that smartass Teen who fanboyed over C++ and built kernels and compilers and all that shit. Well...
Ultimately i must admit that I have moved away from Programming. I dont have any Projects I could acomplish which would be worth my time, I cant come up eith any, to say the least.
Additionally I'm demotivated as hell because I'm always tired due to my Hourlong Organ-Practice sessions and very long school times.
I think that I want to major in Music.
So incase you wondered, thats where I have gone to. I might still lurk here, and maybe someday i'll restart coding. I hope that I will, because coding was loads of fun!7 -
"hey the hi-8 camcorder's working again, can you get this PCI tv tuner card working so we can transfer the tapes to a digital format"
here we go again...
no stickers, so throw it in a machine, boot debian's installer, switch TTYs, "lspci": okay, a pair of "Brooktree BT878" devices. Drivers? ..."support built into most kernels since 2.4." Didn't they remove a lot of legacy hardware support from 5.x or 4.2x or so? Debian works with it... oh, "Debian Sarge." Kernel 2.6. FUCK... well, we'll try Debian 10.6 latest and see what happens.
Currently installing Debian 10.6 on a victim machine from a nonfree ISO to test this. (goddamn, how many times have I installed debian onto something?) Hopefully I don't have to go find a Debian oldoldstable ISO or anything...2 -
So I was rejected by the management today for promotion to Senior 2 although I have done several major feature developments + infra design and basically end to end ownership.
Reason for no promotion? That's the best fucking part, according to the feedback, the work I performed on the service I created is well-designed,
and the code quality is commendable. However, they pointed out a notable difference in code quality between the micro-service
I built and the rest of the project developed by others. This, apparently, suggests that I lack a strong sense of ownership over the broader product.
First of all, we have super tight deadlines (almost 996), and I burned midnight oil to make sure the service I am in-charge of is designed really well.
Also, how in the flying fuck the other how the inability of others to maintain good code quality elsewhere in the product is being used as evidence against my sense of ownership
and initiative in ensuring high engineering quality for the repository I wasn't even working on
What a delusional management, the entire feedback feels like just an excuse to fuck off, we are not promoting you...
May be instead of doing actual engineering work, I should have just do minimal work and write more design docs / technical artifacts
It is very demoralizing after I worked hard for so many months, product went out really well.. yet when performance review comes, rejected with a petty reason7 -
So working for a company and the dev team I’m apart of works on a legacy rails app. Technical debt is high, no automated tests, no proper routing and also running unsupported versions of the language.
I joined seven months ago and got the current team doing automated testing so that’s a plus, they bought this app four years ago and there’s been no language updates, testing, cleanup, security updates, nothing, just adding to bad code.
Now we’re looking to actually upgrade language versions, the language and the framework now this will cause a lot of stuff to break naturally due to how outdated it is.
So I started putting proper routes into place how things should of been when things were being built as we have some spare time I decided to go out of my way to clear up some of the technical debt to get ahead of the curb. Re-done an entire section of the app, massive speed improvements, better views, controller, model, comment clean up and everything exactly how it should be.
I push the PR,
*other dev* - “why are we doing all of these other changes”
*me* - “well to implement routes properly, we have to use the new routes I just did some extra cleanup along the way”
*today, me* - “can you lend me a hand with one of the routes the ID isn’t getting passed”
*today, other dev* - “this wouldn’t of happened if you didn’t redo all these files, let’s just scrap the changes”
…
Sooo, I’ve spend three weeks improving one section in the app, because I’m having issues with one route according to this dev I should scrap it? Wait come again, am I the only one in this team who cares about making this app better all round?
Frustrating…4 -
!rant
So this happened sometimes ago.
We ,primarily, makes accounting software with industry specific integrations of manufacturing,etc. A soon-to-be new client visited our office for a meeting and a quick demo.
He's not satisfied with his current software and wants to switch but keeps bragging about how his current software operates and it's easier for him.(Only because he's been using it for years.)
NC : We used to do like that. Blahblahblah.
My Boss : Well, I built this new office last year. I visited "Taj Mahal" just before that. It was so beautiful. But it doesn't mean I should build a "Taj Mahal" for my office because it's not practical. Same goes for this software.
The client has a great sense if humor. He burst into laughing after 5 secs of silence. Not a single word of his current "system" after that.
PS : My first post.2 -
Me and the lead developer of my team gave a long and detailed explanation to our manager entailing the current state of a budge program our workplace uses.
This app has been bugging him for a while, he did not write it and has not been given an opportunity to rewrite the damned thing. Its a really...really messy application, and whilst it is a functional one it most certainly is NOT an efficient one since adding or moving things only incites more spaghetti mess.
We were laughing while giving our report, but both of us were crying inside. The main thing is, we both love PHP and the things he has built are very well structured and efficient, he has good technique, but will admit at certain caveats regarding the way he structures his dbs stating that he always has to do changes, which hey, its the nature of the beast, dbs change all the time. But our issue with php is the same: it lets beginners write monstruosities that are harder to do in other environments.
It really is a permissive language. But I reckon thay such lax nature is better left at the hands of the more experieced developers that know what they are doing.
Either way, we will restructure this motherfucker taking advantage of the new standards (which both of us are well versed in) and applying a more structured approach with a nice frontend interface (we be looking at Vue.js and React although we are considering Angular as well)
Gon be some good times. -
So I'm in a scenario I'm uncomfortable, need some encouragement from fellow devRanters. (Looong post)
I've been working at this startup for about 10mths (since I graduated). They have been really good to me since the start, and overlooked some fuck ups I did at first.
But now I've been way more experienced , picked it up really quick. And I've basically redesigned several of their admin solutions and data products. Also, I'm basically their entire data analysis team now. I do backend (node, PHP, MySQL) and analysis for them (stats, deep learning, python, big data packaging for clients).
But seeing as I've moved in their company, and have been consulted on several major decisions, as well as built a really good relationship with some of their clients. I still haven't seen a raise, moreover I've been told that I'm expected to work from 8am to 5:30pm (9.5hrs no overtime pay). Which really pisses me off, since I know I'm worth more than what I'm paid (about 40k a year).
My brother (who's also a dev) suggested to tell them that I'm not happy at work due to this. And quit if they don't react well.
How should i bring this up? Should I really quit? This is all new grounds.6 -
Turns out the only thing that was keeping me from using alacritty was the lack of keyboard-based text selection. About a month ago they released version 0.5.0, which added the ability to toggle "vi mode," which allows built-in, simple navigation of the current buffer using common vi keys. Consider me hooked and converted from urxvt, which works well, but lacks a lot of modern features, and is a bit clunky to configure.2
-
TL;DR - an entire emulation of a closed source CMS to develop a theme
The longer version:
We are using a cms that is closed source, and we only have access to frontend files alongside twig files. The CMS is custom built but many aspects are in a very rudimentary state, for example it is nearly impossible to develop locally, we have to use an integrated text editor to code stuff.
So out of frustration, and for my development needs, I decided I would make an emulation based on Symfony 4. Also because my PM was pressing me to optimise our site. I wrote some custom JS to handle everything smoothly, a semi-sass framework and well-structured twig files.
I was also supposed to work with our graphic designer, but she didn't get any alloted time from our pm to work on it...
Now PM asks me to write a specifications document in order to make another company build the new version
I mean wtf, I'm so bored, I can actually enjoy my day by coding, and no, I'm just there to write the specs.
When I told PM I am currently building the new version, she's like "but we didn't validate anything", when she explicitly said I had a green Go to code it a few months back
Instead I have to make prezies and convert them back to PowerPoint because we have computer-illiterate people in the company who aren't flexible to understand simple tools.
Let's hope it won't get useless by Friday (I have a presentation to give, alongside my estimates and project management presentation)1 -
Well I was going to be productive today, but instead my partner (same project, but different section within said project) decided to question the entire premise on which the project is built, so now I have to explain why we're doing what we're doing.
Again.1 -
I should've tried Mint sooner the first distro that has just worked out of the box for me.
Easy to install deb packages the ui looks good built in dark theme. If it runs as well on my desktop as it is on my laptop I think I'll have a distro for life.1 -
Any idea of how to protect your nodejs source code on a client's onsite server ?
If they can SSH, they can get the entire source.
This is built into the angular framework very well but I don't know how to do this on a server.
Any neat packages for obfuscation, uglification etc ?8 -
!Rant - I'm looking for some advice 🤔
So this kid he's 13 interested in building cool things programming etc hasn't had any real start in it.
So I'm like ! Great! 🤔
Another programmer in this world would be lovely ... Before I used to take this approach of, you should do ... This.
Now I'm taking the approach, well what do you like what interests you 🤔 what do you find yourself needing?
Effectively trying to find an in, Into what might drive him to keep with it.
I find people get to ... Uninterested in it. Fast. I've literally had 10-20 people go 🤔 I would like to find out more I really like this etc .
But most don't stick with it I feel because I suggest they make this start and they aren't interested in.... That specifically even though it's a steeping stone
Normally I suggest html CSS right. It's a simple easy thing to learn
Then JavaScript then ... Another language like c# and move to c++ etc.
It's not what I did but I think it's... A smoother transition then my c# start then dropping to c++ then web
So opinions ? Is this the right move 🤔 he has this project in mind now. This app. Which I said could be built in html CSS really if he wanted to. Or though I suggested looking at some native stuff to, then pick.
I've left it open said he can ask anytime. I sent him codeacademy fyi
I told him to get this app to 😂 so might be on here8 -
i'm living in a different country because of work, parents ranting in phone "the PC is slow" well fuck, that hdd was old when i built that PC so i wanted to change the hdd for my ssd anyway
Goes home for a little time period.. no time to order things. Turns out, hdd meanwhile died on them... well what a good thing i have this ssd in my old notebook, so its not a problem.
*turns on old notebook with 4 yo ssd* ...its dead too.
wtf, i'm so mad right now4 -
Aside from simple programs I wrote by hand-transcribing code from the "Basic Training" section of 3-2-1 Contact magazine when I was a kid in the '80s, I would say the first project I ever undertook on my own that had a meaningful impact on others was when I joined a code migration team when I was 25. It was 2003.
We had a simple migration log that we would need to fill out when we performed any work. It was a spreadsheet, and because Excel is a festering chunk of infected cat shit, the network-shared file would more often than not be locked by the last person to have the file open. One night after getting prompted to open the document read-only again, I decided I'd had it.
I went to a used computer store and paid $75 out of pocket for an old beater, brought it back to the office, hooked it to the network, installed Lunar Linux on it, and built a simple web-based logging application that used a bash-generated flat file backend. Two days later, I had it working well enough to show it to the team, and they unanimously agreed to switch to it, rather than continue to shove Excel's jagged metal dick up our asses.
My boss asked me where I was hosting it, as such an application in company space would have certainly required his approval to procure. I showed him the completely unauthorized Linux machine(remember, this was 2003, when fortune 500 corporations, such as my employer, believed Ballmer's FUD-spew about Linux being a "virus" was real and not nonsense at all), and he didn't even hesitate to back me up and promise to tell the network security gestapo to fuck off if they ever came knocking. They never did.
I was later informed that the team continued to use the application for about five years after I left. -
I just realized that I may be hard to fire because I create a lot of apps. All other devs on my team work on the same big projects and maybe share code more.
But I tend to be the only dev for a lot of my work. In addition to building and deploying a few standalone projects.... That no one else has used. I write usage and design docs but nobody reads those.
And one application is very complex, has many parts. It even took me a while to pick it up at first and I've been the only dev on it for years... So built a lot of things on top.
Today I was actually talking to the business team that uses it and they were like when is feature A, B, C going to be done. And I finally said, has to be one at a time bc I'm the only dev...
Though last week I did ask for some help to look into one of them while I worked on another more complex one but I gotta train them. And well their part involves only a small part of the entire app. -
So first rant, here goes weirdness, and also lengthy rant
So in my company we have the hr and accounting managed by the same person which also deals with all things employee related and she had a need for a way to extract a birthday from, what is in our country the personal identification number, things go great i get a formula that performs parts of the magic up to the point where the first digit of the number dictates the gender and century to be used when forming the full year, mind you only the last two digits of the year are in plain within the id number so i thy a number of ideas. After bashing around google sheets for a while ( i've got open office installed and formulas don't export well to the excel that person uses but google sheets does so i built it there).
First idea : make a few conditionals to check for the value so we have 1 and 2 for 19th century, 3 and 4 for 18th century , 5 and 6 for 20th so i go ahead and write my conditions and they fail, all evaluates to false, it cascades through the else variants up to the last one so i'm wondering if the "if" itself doesn't support the or operator, seems it does, next i think it's the bloody condition written wrong so i reevaluate my logic in php in a test script, it works as intended, then i think ok not the right function called, let's see the docs, docs confirm i'm doing it right but what was wrong was the way i was getting that first number, using left seems to produce a string although the base thing is a number, now i start searching how i can cast it, like you would normaly do when the data type is fried, value function appears to be the solution but it isn't working....now i'm thinking "ok so i have a value and different things to print out so let's look for a switch, maybe it can understand that" switch function found under the form of choice, i get it sorted but am stuck wondering why the heck was the if and value combination not working.
Simple answer to that : value doesn't work well with function results, a known bug listed by someone in a comment, a comment i have failed to read for about 45 minutes of trying to understand.
All in all it worked well for the person asking for it so it's nice. -
I CAN'T TAKE IT ANYMORE. We brought on a vendor to provide us some fancy OCR tool. It barely works. It's been barely working. And the vendor is so adamant it works it's so difficult to get them to send people onsight to work with us. We complained about it to the exec and we got "Oh they're a tech startup. You have to help them along with developing their process blah blah blah". Well they don't want help we offered they keep existing their shit is top secret (and it works). When they make changes remotely it's like they blindly make a change and then throw it to us to test. When we can get them to come in they hang around till the problem is fixed (more than once we've had to tell them how to fix it.) and they fly as fast as they fucking can through the door. A guy on my team even built something similar backed by Azure but we were given directive to work with them. And now we're getting pressure about delays in launch. But it's not our fault. The vendors asshole lying CEO keeps making shit up and we're told to work with it. Yet it's our fault that we missed deadlines? fuck this place !!! fuck all of this !!!6
-
Question: We are planning to transition our old ES5 codebase to modern ES6/ES7 and even typescript.
What would be the build tool you would recommend if we want to start supporting ES6/ES7 and even Typescript?
Webpack, Vite some other?
This is a vanilla Javascript Project with large codebase it's been built using custom build tools like UglifyJS and UglifyCSS and of after lots of begging it finally got the green light to move to a more modern build tool and start supporting a more standard JavaScript Features.
Mainly I want to move to TypeScript but transition would be slow so the build tool would need to support .ts and .js as well, that is traspile both the .ts and .js into one final production build.
What build tool would you recommend for that?8 -
My company just released its website today. Previously, it just used its parent company's site.
Now, the problem is that it sucks big time. Awful design, pixelated stock photos, bad navigation, and broken grammar.
In the company's defence, it's not a web shop. It employs zero web devs. The site was built by an external company.
But if you are like me, you visit company websites before you apply for a job, and in this case, it would bed a big red flag.
Or maybe the hard-core embedded devs they are looking to employ wouldn't notice? Maybe they are all stuck in the year 2000 as well? I used to be a web developer so maybe my criteria are broken?3 -
I'm in a dilemma.
I started this job about 9 months ago and it's really not what I expected. I'm the sole developer in my department that handles applications built around our customer database.
Well it's pretty boring and there is a lot of technical debt with the source code since usually 1-2 people are taking care of it so they never had proper conventions. And we have super old applications running on legacy solutions like cold fusion 🤢
I also receive a lot of problem tickets that never contain enough information to actually do anything and the people don't realize I have no idea what they do or what their business processes are.
The upside is I'm paid very very well for this job > 100 in a place where cost of living is cheap. And when there's no work to do I can work on side projects.
It's really not fulfilling work and idk if I should stick it out. I also don't know where I would head next. There's not very many companies working on cool stuff. Maybe remote work?
Anyone else have a similar story?6 -
Went on this 2 day business show...
Next to me a 100 inch tv... 4k quite awesome jittery video at points ? Codec or cable is wrong...
What was on the right of my stand ... To the cake.
"How to make money online"
He proceeded to state things like I now have 20mill my dream car etc ...
*Me trying not to laugh\be disgusted*
His power point ... Well a 10 year old can do better looks built in 1995
People were buying into it ! How the fuck does someone who has apparently 20mill give such a shit design to people and they listen...
I seriously wanted to go on and say... Don't listen to this fraud this, piece of shit snake oil salesmen.
But I didn't... And.. I regret it. On the bright side ... My stand had the shortest setup in the whole place bet by far the best websites! -
My last rant did not go down well 😂
I need to clarify.
If you have no communication directly to another dev.... And your creation directly impacts theirs .... And you don't tell the middle man ... You are a twat especially if your aware of the launch that's basically right now !
To be clear.... This guy built their site and database everything .
I had to connect part of their new app to the site... A few pages they wanted in the app.
He changed the links ... On purpose I think to screw over the launch of the app to make me look bad
I can not communicate with him... The CEO hates him and won't talk to him either
So what am I to do?
Not be pissed off about a spiteful dickhead?
Of course I'm pissed
To make people understand you don't send out a lethal update that can fuck up the servers without telling no one... That their might be technical issues -
Real life experiences developers, web developers and or designers! Please help.
I have been self studying for web development for almost 2 years. Even still, I'm too afraid to apply to jobs. I haven't built a solid project for a while because I'm losing hope. I know well beyond beginner html, css and JavaScript. What do I SERIOUSLY need to know before applying? Any suggestions? Concepts? Abilities? I think my girlfriend is losing faith in this choice I made as well. If I can't find a code job soon, I think I'm destined to find full-time work, anywhere.. and I only finished a 2 year degree.
Please help, fucking desperate.15 -
!rant
Have you ever used Dart?
Is it interesting for a desktop only (expecially Python and C++) enthusiast?
I've heard it's a very well built language, but a bit boring to use.3 -
Indigogo is to retail what ICOs are to he financial industry.
- some random people think of an idea (ICO = token, IGO = magical dick cream)
- they both rely on well made but completely horse-shit marketing material
- they both spam your sites with the same repetitive ads
- they both offer discounts for getting in early (aka give us money before we have designed or built anything)
- they both make outlandish and sometimes illegal product claims (ICO = Visa is a partner, IGO = magic dick cream does magic things)
- in the end most of both options ends up giving you nothing at all and just running away with your money
- best case scenario they both deliver a product that is utterly worthless and meaningless
- everyone is hunting for that one coin or product that is a not a total scam.
I don’t hate indigogo but they certainly are shady as fuck. I’ve rolled the dice on then 4 times and got scammed on 2 of them. It’s basically a crap shoot.1 -
A dedicated team has built an "infrastructure" for creating UI for c++ developers in the company. What looks like a poor attempt at recreating what Microsoft did with XAML at first glance, it actually is a horrible exercise in force feeding people the stinking pile of shit that their code is.
The idea is to make it easy to create UI for developers who aren't used to front end development. They should just need to declare the layout. Very noble.
But.
If you want to do anything more than show a checkbox or a radio button, if you dare to define relationships between the UI controls or worse, if you get ambitious with creating a simple UI that uses a lot of similar controls and similar relationships with dynamic content... be prepared to eat your own barf from eating too much of their shit.
Not only do you now need to write front end code (including JS among others), you need to do it with limited or poor support and you have to make sure that it sits well with the house of moist, crumbly cards the team proudly created. Or resort to some very stupid and performance costing "bypasses" that further cripple your application code. Usually you have to do both of these things.
To think that scores of other teams have welcomed this amazing enhancement with full support without any resistance. It's sickening.
I waste too much of energy (and good jokes!) with these people.rant poor infra complicated as fuck punch holed abstractions we do what we want brain farts materialized in code no brains needed4 -
PM comes into my office: "Hey, if <client> asks about his edits, just tell him they're scheduled for this week."
me: "I thought they were scheduled for this week, I thought that you were currently in a meeting to get final specs so you could tell me what needed changed."
PM: "Yeah, he wants to take the plugin from 5 steps down to 3, we told him it wouldn't be a problem and we would have it done this week."
me: "Ok, there are limitations as far as what I can cut out of the process, his tag line when he started as a client was '5 easy steps' and I built something that did what he wanted in 5 steps. Changing things this late in the game is not simple, I'm talking a minimum 6 hours of work."
PM: "Well I tried to make sure that what he wanted was possible but I didn't have a developer in the meeting. It shouldn't change anything that much."
He ended up scheduling a meeting with me and the designer to go over the edits Thursday afternoon. So I will have the new specifications which I said would be a minimum 6 hours of work and I will be given ~10 hours in which to do it. I sure hope nothing unexpected pops up while I'm working on this.
I'm also the only developer this week (and technically speaking I'm junior) since our senior dev wrecked his car over the weekend and isn't planning on being in all week. I'm the only computer literate person in the office of 50 or so, which means that if there is any kind of tech issue I'm ripped away from my desk for 'emergency help'. I have two other sites to get ready for client approval meetings by Friday afternoon and if the clients approve I will be launching their sites that afternoon as well.
The sign on my door currently says "Error 500: unable to handle your request" I need something to throw at these people.4 -
Drupal 8 fractured the community, dead ended projects that had years of being built up and supported, started a downward trend in overall number of websites using Drupal when it was still increasing market share, homogenized Drupal with other less successful frameworks that had already attempted it and failed by using composer to replace drush, twig to replace PHPtemplate, and Symfony to butcher Drupal and hang parts of it on.
The mission statement was to "bring Drupal to the modern era" and "be more enterprise friendly". All I've seen them do is make it worse. I have stopped using Drupal now, I still maintain some Drupal 7 sites but now that they killed the Drupal 7 community it's basically dead. Some small attempt was made to salvage it with Backdrop but it will likely never be as big as Drupal was and is mostly dead itself, for one thing it's not directly compatible with the huge library of modules either.
Another thing I loved killed by those without vision and giving into the "industry standards" that make one question the intellect of everyone who subscribes to them being a good idea. But hey that evil procedural programming that worked so long for so many was finally defeated. It's surely better now right... right?
At least this movement was supported by people that can't even tell the difference between the use cases in real projects between Drupal and Wordpress. Software Development is in such a good place and has no hypocrisy. One would never suggest it has lost sight of its original purpose of solving real world problems with computing and become self absorbed with its own navel gazing.
If still in doubt check attached image, it tells a very clear story about how to ruin the life of a CMS. It honestly feels like a hitjob attempted to sabotage it rather than an earnest attempt to improve something that has been doing well since 2001.10 -
I finally gave up with windows (especially 10)
Used to be behind it and support it but the last bunch of updates is causing more of a headache and dont get me started on the "oh you disabled automatic rebooting..... going to reboot anyway and give you a 10 minute warning while you are asleep".
How bad did it get?
I have built a plan for my linux install that will allow me to play most games via linux (thansk wine and DX2VC) and as i love playing Sea of Thieves, got a few things set up so that when i start the windows vm, it will unload my gpu, give it to the vm. when i shut the vm down, it will reload it back into linux (thanks to joeknock90 if hes on here)
Tested this with my laptop with an external crappy GPU and works surprisingly well
Sources where i got where i am:
https://github.com/joeknock90/...
https://lutris.net/
https://looking-glass.hostfission.com/...
and yes Linus's vid also gave me a little push as well6 -
My setup, seeing that people are posting theirs.
+ BenQ 22" monitor
+ Custom-built PC
+ Fried i7 motherboard :(
+ Working i3 motherboard
+ 2 Green fans (top, back)
+ 2 Red fans (front)
+ (not-working-well) CD/DVD disk
+ 2G WD hard drive (not SSD :( )
+ 4-port USB 3.0 hub
+ SD card reader (with 3 more storage devices it can read)
+ Webcam
+ HP DeskJet Ink Advantage
+ Horrible mechanical keyboard
+ Special keys (music player, play/pause, next/prev, etc.)
+ Mouse that doesn't stop glowing
+ Awesome speakers
+ 4 lights
+ Water jumps through the lights whenever audio rises
+ Xbox 360 S (2G internal storage: Ugh)
+ Speakers connected to Xbox 360
+ Desk Lamp
Software:
+ rEFInd
+ Arch Linux
+ Plymouth
+ Systemd
+ i3-gaps (Me)
+ GNOME (full) (for rest of family)
+ NeoVim
+ XTerm
+ Cmus4 -
Thinking back, it’s pretty terrible how long it took to create my first real development project.
When I was the ages of 13-18 I built websites on and off but I would never consider them good enough. I would literally design a bunch of images and then, using just HTML, put all the images together like a puzzle using exact pixel locations. Might be fine and dandy now but back then it would look great on my monitor but on others it would be an absolute mess.
Anyways, after that I got in college and started learning C++ and did assignments but I don’t count those as my own either. Not until I was 29 (my current age) did I finally develop a program assigned by my internship. Prior to that I always just re-learned C++ over and over again off and on because I had no clue where to go after that.
Apologies for the long intro. So the first development project that I feel is legit at my internship I had to use my companies API to track the amount of time it took for them to encrypt a packet and then decrypt it as well as grabbing the packet and seeing how long the hash was, the letters used in which position and so on. Essentially grab a whole bunch of statistics from their software and then output it to an excel document. It had a menu, and I had to make it work on Windows, Ubuntu, Raspbian, and some other systems on different devices.
I was actually really proud of what I ended up with and they use it to test their new versions and compare and so forth. -
Substantive post / question time!
So I'm working on this project that isn't a disaster but very much suffered from a lack of planning (both on my part and others).
This is a feature that involves all sorts of ways to view and manipulate some records and various records and so forth... I mean what isn't that really?
I think everyone tried but we didn't realize how many details there would be and how much we would need to (well I demand we do) share code across pieces and how that would slow us up when we realize feature A needs to do X, Y, Z and ... well obviously that means feature B has to also...
I'm not really upset about this, it's progressing and I'm learning. I'm writing it all now so it's under control, but...
I want to be able to display, visually where we are as far as each component of this project
- Component A
- Description:
- Component A does things you don't want to.
- Has features:
- Can blow up things in a good way.
- Produces flowers and honey on demand
- Missing features:
- Doesn't take out the trash.
And so on for component B, C, D, Z.
Right now I'm just using a plain old document file to write up a status / progress type thing now.
We use Teamwork to manage tasks, but I kinda hate it. It's similar to the above example in being able to bust out lists... but they're not connected in any way. All the details are lost on these bullet items as they're limited to one line when you look at everything ....
It's the classic case of a tool that shows lists ... but doesn't promote or allow for showing any connections between them...
And really the problem with this project is that we built little bits and features here, and little bits there from the outside in and ... really we should have built it from the top down where we had to face a lot of questions earlier.
Anyway does anyone know of anything that has project type management / status / progress stuff that is VISUALLY helpful .. not just a bunch of lists and progress bars?
I know I didn't word this well but I'm open to even wrong answers....2 -
I can't find a remote development job and here's Microsoft built a AI that can code. Well fuck you Microsoft, fix your fucken browsers. oh wait...Your AI again suck.
I think it's best I go back to the farm.4 -
//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 -
So started building a game engine in Vala using SDL2, I have never built anything from scratch and decided to do it with no tutorials and just looking at the documentation on valadoc... So of course all of the pages for SDL2 and it's sub components show up fucking blank... Well isn't this dandy .-.
-
I recently went through a very detailed and well-explained Python-based project/lesson by Karpathy which is called micrograd. This is a tiny scalar-valued autograd engine and a neural net on top of it.
The project above is, as expected, built on Python. For learning purposes, I wanted to see how such a network may be implemented in TypeScript and came up with a 🤖 micrograd-ts - https://github.com/trekhleb/... repository (and also with a demo - https://trekhleb.dev/micrograd-ts/ of how the network may be trained).
Trying to build anything on your own very often gives you a much better understanding of a topic. So, this was a good exercise, especially taking into account that the whole code is just ~200 lines of TS code with no external dependencies.
The micrograd-ts repository might be useful for those who want to get a basic understanding of how neural networks work, using a TypeScript environment for experimentation.
With that being said, let me give you some more information about the project.
## Project structure
- [micrograd/](https://github.com/trekhleb/...) — this folder is the core/purpose of the repo
- [engine.ts](https://github.com/trekhleb/...) — the scalar `Value` class that supports basic math operations like `add`, `sub`, `div`, `mul`, `pow`, `exp`, `tanh` and has a `backward()` method that calculates a derivative of the expression, which is required for back-propagation flow.
- [nn.ts](https://github.com/trekhleb/...) — the `Neuron`, `Layer`, and `MLP` (multi-layer perceptron) classes that implement a neural network on top of the differentiable scalar `Values`.
- [demo/](https://github.com/trekhleb/...) - demo React application to experiment with the micrograd code
- [src/demos/](https://github.com/trekhleb/...) - several playgrounds where you can experiment with the `Neuron`, `Layer`, and `MLP` classes.
Demo (online)
---------------------
To see the online demo/playground, check the following link:
🔗 https://trekhleb.dev/micrograd-ts3 -
So I was looking into phone app development again (as you do) and I'm working on a simple QoL app for me and my SO that will help us automate some home management and finances stuff. Naturally I delved down the rabbit hole deep and wanted to have push notifications so we don't have to check the app periodically to know when certain things happen... Oh boy... Why is mobile development so convoluted, especially if you don't want to rely on Google Services...
It seems that the most accepted way of doing this is Firebase (FCM). Well me being me, I refuse to use google services for this and I prefer self hosted solutions (for data privacy reasons) which eliminates most products out there.
It also didn't help that my framework of choice is Flutter/Dart, because fuck Android Studio and the insane buggy XML stuff and fuck Android and it's constantly changing APIs...
Well In the end I decided on a rather simple solution and self hosted an AMQP service (RabbitMQ in my case, as I have some experience with it already) and implemented a foreground service in android platform specific code on top of my flutter project to kickstart it and made my phone a queue listener... This now means I can push notifications from my server to the Messaging Queue and it will be pushed into my App automatically!
One thing I found out on this journey was that Android now kills most background services and enforces foreground services to have a visible notification in the status drawer... which I actually approve of. It's a bit annoying that you can start a reliable background service, but I'm absolutely on-board with long running processes started by my apps are constantly visible...
Long story short, I love reinventing all the wheels, especially if it's for free and private... And I also went to sleep at 2AM again because this took longer that I'd like to tune... but it works, and it's google free...
I'm thinking of trying to package this up as a flutter module later, but first I want to do testing on battery life and the general life cycle of the service. RabbitMQ says they have the client library optimized for long-lasting connections and it should be just using a tcp socket, which should pretty much be what all the push notification services are doing anyway. I'm also not completely satisfied with how the permanent notification looks.. it isn't collapsible like some of the other ones from other apps and it's about 2 lines high instead of single line... which is something quite annoying and I'm struggling to find any relevant docs on how this is done other than possible making a custom Notification Style... but I just can't believe that everyone is doing that.. there must be a built-in somewhere -_-... Ugh Android is hell...
Anyway, if any android devs here have some hints, tips and tricks on how to handle this type of background/foreground process stuff and I'm doing something wrong let me know, cause googling this shit is a nightmare too!6 -
Anyone tried converting speech waveforms to some type of image and then using those as training data for a stable diffusion model?
Hypothetically it should generate "ultrarealistic" waveforms for phonemes, for any given style of voice. The training labels are naturally the words or phonemes themselves, in text format (well, embedding vectors fwiw)
After that it's a matter of testing text-to-image, which should generate the relevant phonemes as images of waveforms (or your given visual representation, however you choose to pack it)
I would have tried this myself but I only have 3gb vram.
Even rudimentary voice generation that produces recognizable words from text input, would be interesting to see implemented and maybe a first for SD.
In other news:
Implementing SQL for an identity explorer. Basically the system generates sets of values for given known identities, and stores the formulas as strings, along with the values.
For any given value test set we can then cross reference to look up equivalent identities. And then we can test if these same identities hold for other test sets of actual variable values. If not, the identity string cam be removed, or gophered elsewhere in the database for further exploration and experimentation.
I'm hoping by doing this, I can somewhat automate the process of finding identities, instead of relying on logs and using the OS built-in text search for test value (which I can then look up in the files that show up, and cross reference the logged equations that produced those values), which I use to find new identities.
I was even considering processing the logs of equations and identities as some form of training data perhaps for a ML system that generates plausible new identities but that's a little outside my reach I think.
Finally, now that I know the new modular function converts semiprimes into numbers with larger factor trees, I'm thinking of writing a visual browser that maps the connections from factor tree to factor tree, making them expandable and collapsible, andallowong adjusting the formula and regenerating trees on the fly.7 -
Built a pretty slick chat bot for my company’s conferences that used Google’s Dialogflow for natural language processing and conversation state
It worked from a web chat or SMS. Allowed manual responding by agents as well as the chat bot. Pulled dynamic answers through a 3rd party API integration
Most common questions “what is the wifi password” and “tell me a joke”
Project was killed after 2 conferences - thankfully it only took me a few weeks to build4 -
well folks, i've truly seen it all. an impressive an informative post on all there is to know about TypeScript, about time, since it's only 2023 and I've been waiting for this for so long!
...
"note: the syntax" 😂
remember that at the end of the day, this guy is employed, and i am not...
in all seriousness though, it's mind boggling to me these companies that market themselves as software or developer companies (or "professional" developers themselves) STILL aren't building their web apps using TypeScript
inb4 javascript maximalists / purists - come back after you've built and had to maintain multiple 10K LOC webapps and tell me that typescript didn't help you
🤡🌎🤡🌎🤡🌎🤡🌎🤡🌎5 -
Chat Journal. A chat-based journal application.
An android app I built past month using flutter and flask for the server.
I started with flutter around 2 months ago. I believe it's the way mobile development is supposed to be. It's a treat for every mobile developer out there.
I used flask to build the server, database and even made my own analytics engine. Made an awaful lot of mistakes at the beginning but I think I'm improving at this day by day.
This probably is my biggest and definitely the coolest project so far. There's some saying
"If you have completed building 90% of something, there's 90% more to be built". It's called the 180% rule (or something similar) which literally signifies the difference between building something and building something well enough to be able to publish on the playstore. And this project taught me that.2 -
Alright, my very first post here was about this project and I am thinking it out loud again.
I see a problem and I am struggling to find a solution.
Now what I am thinking of is to articulate the problem well and state WHY I believe it needs to be solved. There are some reasons which must be presented in a capitalist way.
Furthermore, I am thinking of doing a market research to understand various demographics, validate the idea, and figure out the product-market fit.
Now, this qualitative research and quantitative data will help me decide whether it is worth putting in the efforts to solve the problem or not.
And since, we have an MVP already (funnily yes, we built it before all of the above), that will help me validate the tangible solution.
Once we get a confidence boost, then it will be time to get that single transaction which has net positive cash flow.
Start scaling to 'next billion users', so a billion transaction with net positive cash flow.
I won't be branching out into multiple verticals before be able to sustainably scale the core USP.
And while the second half sounds like, 'I have a million dollar idea', I am trying to be more and more realistic and rationale instead of falling in love with my idea.
I don't even have an idea (read solution) to fall in love with. Rather I have a problem that is bothering me.
So, yes, I am continuing this journey to solve the problem which started in second year of my hostel room and has evolved over 10 years. -
My work product: Or why I learned to get twitchy around Java...
I maintain a Java based test system, that tests a raster image processor. The client is a Java swing project that contains CORBA bindings to the internal API of the raster image processor. It also has custom written UI elements and duplicated functionality that became available in later versions of Java, but because some of the third party tools we use don't work with later versions of Java for some reason, it's not possible to upgrade Java to gain things as simple as recursive directory deletion, yes the version of Java we have to use does not support something as simple as that and custom code had to be written to support it.
Because of the requirement to build the API bindings along with the client the whole application must be built with the raster image processor build chain, which is a heavily customised jam build system. So an ant task calls out to execute a jam task and jam does about 90% of the heavy lifting.
In addition to the Java code there's code for interpreting PostScript files, as these can be used to alter the behaviour of the raster image processor during testing.
As if that weren't enough, there's a beanshell interface to allow users to script the test system, but none of the users know Java well enough to feel confident writing interpreted Java scripts (and that's too close to JavaScript for my comfort). I once tried swapping this out for the Rhino JavaScript interpreter and got all the verbal support in the world but no developer time to design an API that'd work for all the departments.
The server isn't much better though. It's a tomcat based application that was written by someone who had never built a tomcat application before, or any web application for that matter and uses raw SQL strings instead of an orm, it doesn't use MVC in any way, and insane amount of functionality is dumped into the jsp files.
It too interacts with a raster image processor to create difference masks of the output, running PostScript as needed. It spawns off multiple threads and can spend days processing hundreds of gigabytes of image output (depending on the size of the tests).
We're stuck on Tomcat seven because we can't upgrade beyond Java 6, which brings a whole manner of security issues, but that eager little Java updated will break the tool chain if it gets its way.
Between these two components we have the Java RMI server (sometimes) working to help generate image data on the client side before all images are pulled across a UNC network path onto the server that processes test jobs (in PDF format), by reading into the xref table of said PDF, finding the embedded image data (for our server consumed test files are just flate encoded TIFF files wrapped around just enough PDF to make them valid) and uses a tool to create a difference mask of two images.
This tool is very error prone, it can't difference images of different sizes, colour spaces, orientations or pixel depths, but it's the best we have.
The tool is installed in both the client and server if the client can generate images it'll query from the server which ones it needs to and if it can't the server will use the tool itself.
Our shells have custom profiles for linking to a whole manner of third party tools and libraries, including a link to visual studio 2005 (more indirectly related build dependencies), the whole profile has to ensure that absolutely no operating system pollution gets into the shell, most of our apps are installed in our home directories and we have to ensure our paths are correct for every single application we add.
And... Fucking and!
Most of the tools are stored as source bundles in a version control system... Not got or mercurial, not perforce or svn, not even CVS... They use a custom built version control system that is built on top of RCS, it keeps a central database of locked files (using soft and hard locks along with write protecting the files in the file system) to ensure users can't get merge conflicts by preventing other users from writing to the files at all.
Branching is heavy weight and can take the best part of a day to create a new branch and populate the history.
Gathering the tools alone to build the Dev environment to build my project takes the best part of a week.
What should be a joy come hardware refresh year becomes a curse ("Well fuck, now I loose a week spending it setting up the Dev environment on ANOTHER machine").
Needless to say, I enjoy NOT working with Java. A lot of this isn't Javas fault, but there's a lot of things that Java (specifically the Java 6 version we're stuck on) does not make easy.
This is why I prefer to build my web apps in python or node, hell, I'd even take Lua... Just... Compiling web pages into executable Java classes, why? I mean I understand the implementation of how this happens, but why did my predecessor have to choose this? Why?2 -
So, I’ve been given the task of sorting the security out in an application plugging the holes and whatnot as to be honest it’s shocking haha. It doesn’t help that we automate security audits but that’s a different rant for another day.
We’re using devise for authentication (rails standard, ♥️ devise), we have no password resets through the login page, it has to be manually reset by ringing support, why who knows, even though it’s built into the gem and we allow the user to login using an username instead of an email because for whatever reason someone thought it was a bright idea to not have the email field mandatory.
So I hop onto a call with the BAs, basically I go that we need to implement password resets into the login page so the user can do it themselves and also to cut down support calls a ticket is already in place for it. So I go through the standardised workflow for resetting a password. My manager goes.
“I don’t think this will be very secure”
Wait.. what. Have you never reset a password before? It’s following the same protocol as every other app.
We go back and fourth and I said I’ll get it checked with security just to keep him happy.
The issue mainly is well we can’t implement password resets due to 100s of users not having an email on there account.. 🙃 so before we push this change we need to try and notice all users to set a unique email.
Updated the tickets. All dandy.
Looking at the PRs to see what security things have been done if any and turns out one of the devs in India has just written a migration to add the same default email to every user that doesn’t have an email present and yep it got merged. So I go revert the change but talk about taking a “we don’t care about security approach”.
Eventually we want to have the user reset their passwords and login using their email and someone goes a head and does that. Not to mention the security risk.
Jesus Christ I wonder why I bother sometimes.2 -
Just built a solid desktop app for MacOS with Flutter that's worthy of shipping. I gotta say I'm pretty stoked about it, even if it isn't nearly as dope as LOIC. Haha chargin muh lazers!
I'll get some screenshots up soon!!
I also wrote a comple CLI interface for Firebase management using Python. Advanced auth abilities, CRUD capability, full json import/export, verification/password resets, you name it. Well, except full Firestore/mobile OTP features but it's still a win. Actually dicked around and made a cool little Firebase chat program in the terminal with the Python interpreter.
Finished up my first apps in React, React-Native and Ember, my 2nd with Electron, and also got my first Firebase hosted site up and running. Solid day!!! Cheers to that. And cheers to all of you amazing bastards!3 -
I have called for a meeting with my manager's manager expressing concerns and ask for a role change inside the company.
How should I approach this?
My current project is this some IoT stuff being built on the cloud.
The role that I was recruited for and the one I am currently doing is very different thanks to the TPTB who suddenly decided some other team in a different country (lets call them B ) take on that role.
I see a lot of trash work assigned to my team that is a consequence of lack of understanding of the cloud stuff by people upstream and not automating steps in the engineering process like build,test, deploy ( which was part of my initial role description ) and I'm not liking my current role. But my manager doesn't give a damn.
He is just happy to be involved in the project.
I feel like I am having leftovers from a fancy restaurant in spite of having enough money to dine well in the same hotel.
When I bring out the concerns like lack of automating, cost savings in the cloud, improved security configurations to my manager, he doesn't seem to care and not voicing them upstream. If I bring up these topics in any discussion where people outside my team are also there,then I am quickly sidelined.
The rest of my team also don't seem to care. They just don't want to stand up and take responsibility.1 -
Can someone please explain why LISP and LISP inspired langs breed the most insufferable twats?
I mean, just look at this, I'm trying to learn Clojure and happened across this site/slash book: braveclojure.com
Some highlights:
>Chapter 7 - Clojure Alchemy: Reading, Evaluation, and Macros:
>The philosopher’s stone, along with the elixir of life and Viagra, is one of the most well-known specimens of alchemical lore, pursued for its ability to transmute lead into gold. Clojure, however, offers a tool that makes the philosopher’s stone look like a mere trinket: the macro.
> The -> also lets us omit parentheses, which means there’s less visual noise to contend with. This is a syntactic abstraction because it lets you write code in a syntax that’s different from Clojure’s built-in syntax but is preferable for human consumption. Better than lead into gold!!!
>Chapter 10 - Clojure Metaphysics: Atoms, Refs, Vars, and Cuddle Zombies:
>The Three Concurrency Goblins are all spawned from the same pit of evil: shared access to mutable state.
>In fact, Clojure embodies a very clear conception of state that makes it inherently safer for concurrency than most popular programming languages. It’s safe all the way down to its meta-freakin-physics.
And look at this: https://quora.com/Why-are-Lisp-prog...
It reminds me of Python before the data-science craze and its adherents thought IT was God's programming language.1 -
Disclaimer: Technically it's not "our" stack, but we have to use it so....
A webapp we built runs inside the company's network we built it for. Their IT are windows lovers, so everything has to run on Windows servers, even the tablets which are used to access said web app need to have windows.
Their company network isn't accessable from the outside world, so we have access via VPN to get into their network. But this isn't enough to access that shitty windows server our software runs on. After that VPN, you have to connect to a different VPN to which you can only connect to while you're inside the company's network. Then you have access to two servers, one the application is running on and one, well to see if you're changes were deployed correctly because the production server doesn't have a browser on it other than shitty internet explorer 8.
The only way to connect to the server is using RDP. Not even samba or so. To deploy the changes we made to our app, you need to copy paste the files from your local machine to the server. And don't get me started on running mssql migration with the shitty mssql console 😤😤
Why would anyone who isn't a complete idiot use Windows for servers or mssql in the first place????2 -
Question:
Could a mobile application such as, facebook (well a minimum version or it), twitter, devrant etc., be built using the MEAN stack (using ionic framework). Or is really ionic very slow?
Or do we need React Native "for better performance"? thus ME[R]N stack?
I am confused, and every article i read says something else.
What are you devs using these days? i need some opinions here.
F*** this sh*t (now my post is a rant)4 -
Frontend developer mainly, getting all excited by C#, net core, apis, http, databases. A new world of trinkets and hard-edged engineering. Makes me eyes glitter.
But my day job needs me to become as proficient as possible on the frontend of the stack. As we warm up to a huge application rewrite, with me as the sole frontender, it becomes clearer and clearer that, if I am not only to survive, but leave a codebase behind me that is clean, thoughtful, well modularised and built with maintenance and performance in mind, that I must let go. I have to focus.
I feel a little sad today. Somehow, right now, the frontend world does not feel as exciting. Javascript feels loose, unpredictable...my work open as well to everyone with every flavour of opinion. Because it is observable.
But I am mortal. Time is precious, and limited. I feel I need a dose of curiosity discipline and that, if I can do so, I can devote myself not to my coming and going whims of interest, but the real hard work of learning craftsmanship once that feeling of glitter has faded.
My brothers and sisters, steady my hand. -
Haven't been able to sleep well for a while. Generally I've either had to take some sort of sleeping aid (usually benadryl, cause melatonin doesn't do anything to me), or stay awake for about 20+ hours. It's been like that for about 2 years now. Due to that, I've built up a resistance to benadryl.
Last night I took benadryl around 11, figuring I'd fall asleep around 12:30-1. I managed to fall asleep around midnight, and woke up at 1. I tried going back to sleep for hours, but nothing. Now 6 hours later, I don't know. Might end up just staying awake until tonight and passing the fuck out.
I wish I could fucking sleep.10 -
I am really psyched about the tech to create voices for generated speech. I am really excited when in the future this tech might be small enough to deliver with a game or OS. Then much more interactive games can be built with generated text. It would be so cool to license voices for this kind of work.
It will probably end up with artists creating unique and interesting voices to allow game developers to pick and choose. So voice artists will be a thing as well as graphics artists. The tricky part will finding a way to add mood states to the generated voices. Right now this could be done with different voice profiles for different speech.
Right now the tech is "large", but this will rapidly become smaller and efficient as it gets developed more.1 -
February will be the first full year at this company as full time employee.
I've updated so many legacy projects, optimized a lot of workflows as well as built new tools to improve efficiency and remove unnecessarily duplicate projects (sometimes literally only 3 variables were different between multiple projects)
My one co-worker taught himself enough code to do the job but doesn't think like a programmer though he is asking me for help and advice to improve what he does since ive proven i know a little. my other direct co-worker I'm practically teaching a Programming 100 course to them
My direct manager at one point said he was so happy he took a chance on me even though I didn't interview well
I like my job, I find it so much better than my last job which was horribly toxic, and more fun than my first 'real' job as a night shift help desk for basically a warehouse environment.
But I feel under paid sometimes for how much i do and all ive improved in my first year, I have my first yearly review coming up. I'm hoping to get a decent raise for all ive done and I want to somehow go over everything with the HR person to justify it. But I have no idea how to talk about my dev work to them in a way a non technical person could understand. I'm also not sure how the review process will work. Like will my manager be there. Or is it just me and HR, is there a paper I'll be sent to fill before hand,1 -
Well it's not exactly a startup idea but something that I and my team built during my first-ever hackathon.
The theme was to build some tools for developers to improve their speed and be more productive.
In our team we were some bunch of students who just knew how to build a basic front end and a little bit of backend and we came up with an application that lets developer query any command line shortcut through his voice and the website will return the keyboard shortcut for that. For example the developer can ask what is the shortcut for splitting the view into two halves in vs code and the website will look it up in database and give back the shortcut
Now when I look back it feels so funny. I still remember that the judges gave us a funny look but they appreciated our efforts as we were too young to be there.. lol
btw If anyone is curious about the project it is present here ..
https://github.com/LaurenAssistant/... -
The adventurous world of javascript and typescript never ceases to amaze me.
I'm investigating some paths to take for migrating this legacy project which has incurred some technical debt. Because of... reasons... even the frontend Vue project needs to be built on a Windows system. No, you can take your hands down, even wsl or docker aren't alternatives here. It's a long story and ties in with said debt.
I'm keen on rebooting the entire frontend using a newer Vue cli and scaffold up all the essentials like eslint and typescript which is currently not used. This is gonna be sweet.
Except, typescript (BY Microsoft) doesn't play well on a Windows (BY Microsoft) filesystem because of a recent change to support - get this - wsl. I can't decide if it's hilariously ironic or genius.
This response about sums up my current mood. https://github.com/Microsoft/...
Of course, further digging in other repos like node only turns up issues closed due to it being on Windows' end.
So now my readme has a troubleshooting section describing how to make changes to your filesystem if you run into issues in Windows and I want to go home.6 -
someone asks me : What do people not tell you about being a software engineer?
So the thing is , No one actually knows what they’re talking about.
See, the thing about building software is that usually you are inventing something.
Not in a pretentious way. I don’t mean “inventing something” as in inventing the light bulb, but I mean making something new that someone else hasn’t built before (well, hopefully — if you’re building something someone else already built, then you might be doing it wrong).
Because of this, people are usually just coming up with solutions based on what they think will work.
And that’s about the best you can do. Sure, the more experience you have, the more you can recognize certain patterns, or lay certain architectural foundations, but you’re mostly just coming up with something new. Maybe not 100% new, maybe some sort of slightly different thing than another thing that exists, but it’s still new.
So yeah, no one knows what they’re talking about. You’ll sit in meetings, with people talking about all kinds of smart-sounding stuff. Most people are trying their best to understand and play catch-up. No one wants to be the dumb one. People try to make it a science as much as possible, but if you really wanna be honest, people are just trying stuff and seeing if it works.
It’s not a bad thing. That’s just the nature of software development.6 -
Hello all (App devs) I have finalized all APIs and here is the postman collection for you. I have been working on the chat page so excuse me for my delay but I finished all the system all that is remaining is the chat. I will be working on it tonight.
Please let me know if there is anything wrong.
Dev 1: thank you will see then asap.
Dev 2: why do u want to make me lost we said u deliver the chat first and then we move forward with the app.
Me: well I had some difficulties with the chat so I finalized all else and u can fix those while I fix the chat
Dev 2: no this is not what we agreed on. This is propostrous. I will not do anything anymore. I need the chat to finale x y and z.
Me: dude the chat has nothing to do with x y and z u can finalize those and then fix the chat!
Dev 2: no I don't understand this is not right.
Me: dude I built the backend I know what u need for x y z. Anyway why all the blame and the destructive approach?
Dev 2 don't think we r kids we r not kids .. (bullshit talk)...
This is the scenario that happens Everytime a pussy of a Dev is late and is ignorant of their job and all about blame it on the weakest point.
Therefore guess what's drafted ?!
MY RESIGNATION PAPER!1 -
Our teacher has assigned us a project that should be well documented, well built, written in a language that he has no freaking idea how it works and the project should be Facebook rich with features, we are three members in a team and the project should be done in less than two months. How the hell should we deal with this freak?5
-
There was a rare footage of aliens using java to fly their ufo, well then i guess thats why android was built on top of java
-
Formed teams with a few people from university I wasn't really compatible with. I wasn't prepared well either and it was my first hackathon. We bounced about a few ideas and decided to build a simple Javascript game, a Python backend and Postgres dB, techs I was barely familiar with at the time. Wasn't involved/couldn't contribute in the design or help much with coding. It was a humiliating experience overall.
Changed teams and formed a team with like minded people 4 months later and was better prepared this time. Built an app for social innovation and came runners up at the hackathon! -
When I first use Android Studio, it was a very well built beta, I thought it was production ready. I just used eclipse for my new aws project. I thought eclipse is in beta....I want to stay away from eclipse, I'm asking for help here. Language: Java7
-
Story of two poor puppies
when my mom returned from market, she saw a puppy with her
siblings surrounded by people choosing which one to take.
she pick one puppy. she's color is grayish black puppy with the tip
of his tail and a place in she's neck.
she whined and cried when she separated from her siblings and Mom.
but she quickly familiarize herself with the new family and place.
she was very happy when we bring her sister we found in the same place.
I take care of them.
I feed, wash and play with the new friends.
we built them a house. they were very happy and playful.
but things started to go downhill all of a sudden.
my parents start to prevent me from playing with them.
they say " We bring the puppies for them to be guards ".
they really hate dogs. they started to lock
the house and the window. they had to pass all day in the
same place
(How BORING) they pee there, eat there sleep there.
Since me and my sis prevented from take care of them, we couldn't
do anything all this only to make them cruel dogs and very unfriendly
to people.
when time pass, they started to forget them.
before yesterday, we remembered that we didn't
give them any food or water for the past 3 DAYS !!!
my sister unlock the door for them and they get out
from the house (~Prison~). they were completely
different. the gray puppy was very tired and depressed
and unhealthily skinny. the sister was fine.
we let them outside for few days when the gray puppy
started to get more and more skinny.
he lies on the floor all the day, when we are nearby, she
only wag it's tail no more.
Today, I wake up only to hear the bad story
the gray puppy, well we found her 0x00DEAD ! ! ! !
immediately after I heard the phrase, I burst into tears
I really couldn't stop crying. I couldn't even see that
cute face 0x00DEAD.
My sister's case was way worse than me. the is still
crying at the time of writing. we didn't see their funeral.
the other puppy was very sad because of her sibling
The Worst part is, we didn't name them or take ANY
photo with them !!! :`(2 -
https://youtu.be/yYUuWWnfRsk
I used to dream of systems which were built into the infrastructure for a variety of reasons
One was I didn’t feel object detection was likely good enough to handle various objects say to stock shelves in warehouse like stores
The other was power
If the stretch works one might wonder how many of them they’d have to employ to schedule them to recharge themselves throughout the day
It’s a shame humans as is can’t be trusted with too much free time given how the boomer generation and before willfully poisoned the minds of so many of their offspring creating this mess
We might have reached a point where life was mostly personal Enrichment and study and exercise and leisure where we all lived over a 100 years had minimal offspring reduced our destructive footprint on the world and well you get the idea
With more people working in closed shops we might have even reached this tech sooner
I wonder how prohibitive the price tag is how fast it runs out of power how destructive it is to non durable goods and the what other faults that have kept us from advancing into the golden age the last time I posted this before way way back now
Or maybe rich perverts don’t want to give up their monopoly of control over other peoples lives once were forced to change our lives economic system to adapt
Issue of course is population size
The replacement to honest labor and ingenuity or making a better world in the USA has been a short cut we commonly call slavery and that creates incentive for them most of evil people to breed continually and sell their children
Population in a time period of extreme leisure under normal circumstance would likely fall off
Humans would want to enjoy endless travel which is another problem if we keep cars that are based off fossil fuel
Much like increased tech has the trade off of increased usage of energy that is dirty like our nuclear plant problem in the USA where many places aren’t even carting their waste to Nevada down the 10 mile tunnel they’re supposed to be
So we’re stuck
Oh well
Hopefully there is reincarnation
Maybe I’ll come back as a cat
People just had to pull their insane shit when I was alive
Why couldn’t it have Ben something Normal like war or occupation or just hardship of some form instead of designed hardship to control good people and pattern bastards into this weird shit I see all around me because they’re both evil and afraid of losing what they have
Doesn’t this seem familiar ?
It should
Just like the competitors to Boston dynamics I’m looking up have been spawned as a result of YouTube presenting me with the same video as part of its algorithm heh
And also be because I mentioned that before6 -
Are you out of your free medium articles?😢 My Scrapy is here for the rescue.💸
This is simple application of web scraping, it scrapes the articles of medium and allows you to read or hear the article. If you use this on computer there will be a number of accents in the option.
The audio feature is provided only to the premium medium users, so here comes My Scrapy to save your 5$/month. 💸
.
Tech Stack used :
Python, beautiful soup, Django, speech synthesis
.
PS: This application was built for educational purpose and the source code for this application is not open sourced anywhere.
Fun Fact : You can still read any medium articles if they ask you to upgrade, you must be wondering how? Well, copy the link of the article and browse it in incognito mode on any browser.😂🤣
Try the app and lemme know if you liked it:
https://mymediumscraper.herokuapp.com/...4 -
Storytime.
Our prometheus node, one of your oldest systems (somehow fits the Titan reference..), is about to be relieved of its duties after several years of loyal services to the crew.
We decided to run with another Prometheus node in the ring, that will run simultaneously with the old one, so that the new one can start to collect metrics that we need for alerting (some historic metrics are needed too..). sort of an Prometheus cluster, without the cluster fun and with 2 different Prometheus versions.
The problems with this? Well it's not the new node or the latest shit versions of Prometheus per se.
1: The node exporter.
those dudes decided to make some breaking changes in a minor update, so that you will need to run with some magic bullshittery, that the latest Prometheus can make something out of the old metrics provided by the old node exporters.
The other one is the related puppet code.
The node definitions for Prometheus were built via exported resources on the target nodes.
The code worked like a charm with only one Prometheus node, but try that with two instances in the same way.
Still WIP, but some targets are already included in the new Prometheus instance.
alerting works so far.
Can't wait to close this ticket for good.. -
I have been working a part time paid internship for a few months and it’s not going well.
I’m applying and interviewing for full time but was lucky to pick up a paid internship to pay the bills. I’ve built and am currently updating a single side project for them but their lead developer works a full time job and tbh pretty sure doesn’t want to work with anyone so I can’t even get a list of dependencies or any instructions on how to run anything locally or really connect to the codebase. They also don’t really seem to care about the project as updates happens maybe one every few months. It’s written in a language and framework I’m unfamiliar with and falls outside of the scope of the documentation.
Currently spending hours a week trying to figure out this random codebase and as much as I would love to help the company if their main dev doesn’t want to assist I really can’t do much. Idk if this is a rant or what but this sucks, I legitimately like the owners but I’m afraid there not much I can do to assist or help.
On the other end I’m involved with some great open source teams that I’ve learned a bunch from and really appreciate. Ultimately I just wanna find somewhere accepting, I know I’m a novice and junior at best and need an environment that will help me grow not try to reinforce that doubt and make me feel bad.
TLDR;
Please be nice a receptive to Novices/Juniors who’s end up on your team we probably think you’re really cool and just want to help and we’re sorry for not being experts. 😕4 -
I need to write code for mini sumo robot and have no idea how to start. I don't know any programming language so which one can be good to start? If You have any good courses or something like that I'll appreciate. My friend told me that Python is good option, some people from YouTube said same thing, is that right? Robot is built on Arduino Uno but I can use my Raspberry Pi3 as well if it makes any difference.3
-
Airflow… airflow… I hate you so freaking much, you are a bloated piece of software that packages wayyy too much and increase the complexity of any solution we built on top of you. Plus unit-testing and integration tests are wayyy too difficult with you. But man… your recent UI changes are a massive welcome.
A year ago I was tasked with either upgrading airflow to version 2 or to migrate the code to another tool. Naively I thought “well might as well upgrade to avoid a rewrite”. Little did I know that the reason airflow didn’t scale out well for us, was due to people over the years not having a grasp on airflow primitives like “pools”, “workers” and “operators”. Ended up refactoring the entire codebase for both infra and DAGs anyhow AND upgrading the beast AND lower cost by a factor of 2 (from $100-$150 daily to $50-$70 daily).
But seriously feels like I could’ve solved the scheduling issue with literally any message queue+decent library (like celery or Faust) and I’d have half the headache.3 -
Well, a combination of DXVK, wine and dxvk-cache-pool was used to try and play Path of Exile. The problem seems to be that I can't have any pre-built caches due to them not existing. Seems like a GTX 660 isn't really used anymore and if I want to play a game I will have to have DXVK build its own cache.
Until then, I'm stuck with a stuttery mess of a game due to Path of Exile having a rather many levels. A full playthrough will be necessary until it starts working smoothly.7 -
A space game (obviously) where ships are built and broken in convex pieces. With in-game computers and ship design/construction software, of course. Because what would a game engine be without the ability to play a game within the game, with exactly the same visual quality as in the outer one?
Edit: Game-within-game premise based on the idea that it will be easier to write the ship-CAD software in a game engine than from scratch
Edit 2: may as well also be able to play the actual game within itself, since it would be like holodeck simulations2 -
I way under-quoted this custom CMS.
I thought ContentBuilder.js was going to be a better plugin. Documentation is lacking, I've run into a couple bugs, and the thing looks like it was built 10 years ago with iframes for image uploads...Ugh.
On top of that, I didn't realize how much work certain things would be like the drag and drop menu builder. Yea....it took 4 different plugins to find one that works well with nested items.
I'd say I'm 60% through and need to be 90%. I'll probably start cutting corners unfortunately :(2 -
So in my last rant I mentioned an ERP. This is its story:
When I started, all paperwork (including invoices, delivery slips, orders to suppliers etc.) was done on Word and some Excel, no specialised software whatsoever.
At some point (I already worked there for 2 years then), it became too much even for our boss, so he decided to spend some cash on the real deal.
After some looking around, he found software that seemed right (same vendor as our external bookkeeper used, so it would work with him too, nice). In order to save some money, he purchased it in Germany, as they offered a smaller product costing way less (we were based in Switzerland).
Once installed, we realised that this product was only meant to be used within the EU, as it only supported € as a currency and German VAT rates. We needed Swiss Francs and local VAT to work as well.
His solution looked as follows: I had the task to edit all forms via built-in MS Report Builder (god does it suck) to display the string CHF instead of €, and alter the on-sheet excel-like functions to use our VAT rates. Internally, the application of course still thought it was using € etc. For that reason, all output was unusable for bookkeeping, so we (as before) would just hand it in on paper.
If he had purchased the version sold here, all of the above would not have been the case, meaning support for multiple currencies and VATs, as well as direct transfer to the bookkeeper. He hardly saved 15k, in exchange for a non-working solution.2 -
Do you prefer audiobooks? Are you an active medium reader? Do you want audio for the medium articles you read? Are you out of your free medium articles?😢 My Scrapy is here for the rescue.💸
This is a simple application of web scraping, it scrapes the articles of medium and allows you to read or hear the article. If you use this on computer there will be a number of accents in the option.
The audio feature is provided only to the premium medium users, so here comes My Scrapy to save your 5$/month. 💸
.
Tech Stack used :
Python, beautiful soup, Django, speech synthesis
PS: This application was built for educational purpose.
Fun Fact: You can still read any medium articles if they are asking you to upgrade, you must be wondering how? Well, copy the link of the article and browse it in incognito mode on any browser or sign out and read it.😂🤣
githublink:
https://github.com/globefire/...
demo link:
https://youtube.com/watch/...
instagram link:
https://instagram.com/p/...3 -
I'm creating a little web application and I was considering using Bootstrap to make my site flexible in terms of formatting on different devices. Also some of the built in functionality seems convenient (I am doing the back-end as well and front-end is consuming a lot of time) and easier to apply. Does anyone protest the use of Bootstrap for any reason? If so why?6
-
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 -
Some background:
About 2 months ago, my company wanted to build a micro service that will be used to integrate 3 of our products with external ticketing systems.
So, I was asked to take on this task. Design the service, ensure extendability and universality between our products (all have very different use cases, data models and their own sets of services).
Two weeks of meetings with multiple stakeholders and tech leads. Got the okay by 4-6 people. Built the thing with one other guy in a manner of a week. Stress tested it against one ticketing service that is used in a product my team is developing.
Everyone is happy.
Fast forward to last Thursday night.
“Email from human X”: hey, I extended the shared micro service for ticketing to add support for one of clients ghetto ticketing systems. Review my PR please. P.S. release date is Monday and I am on a personal day on Friday.
I’m thinking. Cool I know this guy. He helped me design this API. He must’ve done good. . . *looks at code* . . . work..... it’s due... Monday? Huh? Personal day? Huh?
So not to shit on the day. He did add much needed support for bear tokens and generalized some of the environment variables. Cleaned up some code. But.... big no no no...
The original code was written with a factory pattern in mind. The solution is supposed to handle communication to multiple 3rd parties, but using the same interfaces.
What did this guy do wrong? Well other than the fact that he basically put me in a spot where if I reject his code, it will look like I’m blocking progress on his code...
His “implementation” is literally copy-paste the entire class. Add 3 be urls to his specific implementation of the API.
Now we have
POST /ticket
PUT /ticket
POST /ticket-scripted
PUT /ticket-scripted
POST /callback
The latter 3 are his additions... only the last one should have been added in reality... why not just add a type to the payload of the post/put? Is he expecting us to write new endpoints for every damn integration? At this rate we might as well not have this component...
But seriously this cheeses me... especially since Monday is my day off! So not only do I have to reject this code. I also have to have a call now with him on my fucking day off!!!!
Arghhhhhh1 -
Spent like all week working on a feature set in a web app, finally got to a point where i thought it was functioning well, ran tests, tests passed.
I was exhausted but happy. All along i have been pushing to my GitLab server. I save my commits and even though exhausted, i am happy as i go to bed.
I wake up, run some errands and my business partner says, eh! Can i come see that new feature set you built, sure, i will be home soon.
I was at the barbershop, trying to look like a human being again. I get home boot my computer and i scream.....
Arrrrrrrrrrrrrrgh
I check GitLab, i check my Git Log and i start to sweat, i was in the air conditioner but it felt like someone turned the heat up.
Git log shows my last commit was 2 days ago, my app is at the state it was 2 days ago and i can't frigging find all i have built.
I need to show this to the client, have no idea what to do now, so stressful. My partner say, you know what, just watch a movie. You built it before, you will do it again.
This happened to him a while ago and i gave him similar advice, it felt wicked hearing it now.
Anyways, i have to build that ish all over again, i do know i wasn't dreaming about having built it. I asked my wife and she said, i did, i was always working. So confusing.
Anyone experienced this before, i have no idea how to find my code.
Help Meeeeeeeeeeeeeeeeeeeee4 -
Lately I've sort of feel like I've personally plateaued... Outside of work, which is still not very challenging, I don't have any personal problems I want to solve. It sorts feels like for everything I want there's either an app I can download or already built (or at least 90% of it and just needs some adjustments or repurposing).
The strange part is it's getting replaced by solving/looking at algorithm problems.
Originally I was going to do mobile + React but I just don't feel motivated anymore... Even if I did build it I doubt I'd use it and I don't have any mobiles apps I want either...
Maybe I'm just really bored at work so now the equation makes sense...
Bored + would like better job == algorithm puzzles
Though I still need to figure out what to do with my reading list and prime videos... They've sorta been backgrounded... And maybe even devrant as well...
Oh yes haven't watched my big TV for over a month....1 -
I implore ANYONE... please...
Have you EVER written a SINGLE Jest test that didn't have some sort of bullshit spewing stuff like this:
"ReferenceError: You are trying to `import` a file after the Jest environment has been torn down."
"Warning: React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: object. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports."
and yet running on a device, features work flawlessly and quite well, no errors or even warnings in sight logged
This is the most fragile pile of garbage I have ever seen.
I hate this.
inb4 your stupid ass todo boilerplate garbage you wrote tests for in freshman year. i'm talking about a REAL app with HUNDREDS of components.
where the grownup testing tools at? it's a question I've still not answered after a year of fucking around with this framework2 -
It all started on a nice summer afternoon. I was minding my own business just using my wonderful laptop with Windows 10 software installed. Then I woke up and realized the truth. I am sick of the scams, the lies, and the games. Today you will all see the same colors as me.
Most of you are probably on a Microsoft device and have had problems with it. A great example of Microsoft's failure is the line of phones they attempted to market. I was forced to own one for a period of time and it is absolute agony. Never force this way of life on another human being. While we are here, why the fuck is Optifine only available for Java Minecraft. Why even have two versions of the game when they cost the same?
These petty offenses are nothing compared to what I am about to tell you. As we all know, Bill Gates is friends with Mark Zuccerberg. Mark is known for his cult of reptile info scammers. Just this association alone is a red flag. This means that Bill Gates is a reptile as well. Reptiles only trust other reptiles.
These "people" are lying to us! Bill Gates just wants you to think he stepped down so he doesn't get the hate and shunning that comes with liking Microsoft. It was just an excuse to get his cult followers to do his job for him so he could run the new world order and the pedophile ring that he co-owns with Jeffrey Epstein. You think Satya Nadella is the "New CEO"?! Bullshit. He is just another Microsoft fleshlight.
Not only is Bill a disgusting liar, but he predicts the future and uses it to his advantage. This is how he has built his cult following and his multi-company empire.
You people need to wake the fuck up and boycott Microsoft. You are all being subliminally brainwashed into thinking it's okay and that "It's just the software" NO. Stop supporting pedophiles. Stop supporting reptiles. Stop supporting shitty products, and STOP LICKING THE CORPORATE BOOT. In conclusion, fuck Microsoft.8 -
So I'm sitting here trying to bodge my way through a member system. These fucknuts really made a bad system..
The task: Export a list of users and their info.
Is there an API available? No, who the fuck would need that shit, even tho the system is built upon Odoo, which has an API!
But it has an export function, you just have to log in and press the right sequence of buttons, because you need the running ID...
Here I discovered the first of many security flaws... "What happens if I post the wrong ID?"... Well, I get access to a file that has nothing to do with me or my users.... What?
Well after some fiddling It works, but holy fuck I found a lot of bugs. And this is a system that is launching in 7 days for us.. Some users have been on it for a year....
How can they ship this bad a product? There's absolute no documentation only a 15-page manual. Guess they don't want developers to develop shit that works in junction with theirs.1 -
Being a webdev has ruined my ability to use any website/online service. Does this happen to anyone else? I invariably end up sending the developer a stack of feature requests and suggestions as I'm sat there thinking "I could do this better!"
Ofc in truth I may be able to do that one part better (usually bits around making the experience as simple and fluid as possible for users), but I wouldn't be able to do other parts half as well. I wonder if I built services like that I would have some annoying git emailing me with all the things they think I've missed... ;-)1 -
Is there any language or framework I am guaranteed to get a job in if I learn right now?
I know this is a shot in the dark cuz if such did exist, every job seeking entrant would simply flock to it; but I don't know how developers switch between stacks. Off the top of my head, recommendation but what if such social capital is missing?
Some background: I built and published a php framework called Suphle (angry-cray-9c191b.netlify.app), which surprisingly neither got any users after a year nor impressed any php employer to hire me despite hundreds of applications sent out
Rather than throwing in the towel, I wish to switch to some other software stack but I don't know where to start, If with all my proven php experience, I'm unable to land any php roles. I have tried searching for nestjs and spring boot internships or junior but nothing comes up. I have run out of time to study a language I will never profit from
I have a flutter app on playstore, built together with a product designer who worked on the ui cuz my front end chops aren't strong. I will preferably continue in a back end environment but if I can solicit immediate employment, I don't mind brushing up on any available tech, be it devops or what have you. I've also worked with spring in a professional capacity, although a very turbulent one where the team we had issues ranging ranging from absence of adequate docs for something as basic as authentication, to using nosql (totally unnecessary), trying to separate codebase into different projects to mirror the real life department (this was my idea). I don't know if it's Conway's law but I decided project should be split into admin, user and common modules/repos since they were being worked on by different devs and had little in common. Unfortunately, there is no doc for importing/sharing local projects so we had more days chucked off
Anyway, I Built a react native app a lifetime ago. Been around the block a bit and pretty confident I won't take much time to get up to speed with a tech. Where do I go or how do I start? I stay in Nigeria so may be limited from on-site roles as well12 -
Well fucking shit, I built util-linux from source and restarted my Debian installation without knowing that mount needed new libraries, so I can't fix it from the install itself because mount no longer works properly and and the root partition mounts as read only. My only hope is to take the SSD out and put it in my laptop (The BIOS on this machine doesn't like booting from external drives for some reason...), boot from a recovery disk, chroot, and re-install util-linux that way.2
-
Well, My firm has a CRM which is built on JSP and Java. They want to upgrade the frontend by using a modern technology. Which one is a great choice React or Angular?
For the backend, APIs need to be integrated and I need to select from PHP and NodeJS. The traffic right now is 100 hits/second and is expected to increase upto 1k/sec in 6months.
What is the best choice for the frontend, backend and I need to select a HTTP request client too.22 -
I just realized my NLegs app has probably become the most well-polished app, fictionally and GUi-wise, that I've ever built....35
-
I recently came across this article with some basic security advices, like use 2fa security key, encrypt your USB keys, don't use untrusted USB chargers / cables / ports (or use a data blocker cable if you need to charge your device). It made me think, how relevant are the USB-related threats and risks today? Do people really still use and carry so many wired USB devices, and just drop or plug them wherever?
The last time I used an USB device to transfer some important data was probably over 10 years ago, and for the love of god I don't know anyone who still carries an USB key with sensitive data with them on a daily basis, much less actively uses it. Besides, whoever still does that probably puts their USB key on the same keychain as their ID / access tag and a bunch of other keys (including a 2fa device if they use one) - they're not going to lose just some sensitive data, they're going to lose authentication and physical access devices as well, and that could turn a small data leak into a full-scale incident, with or without an encrypted USB device.
I'm also not sure about untrusted USB cables and ports, from what I've seen the USB outlets and cables are pretty much non-existent in public places, most places offer wireless charging pads instead (usually built into a hand rest or table surface).3 -
Okay, so I am learning Python and I have to say it's a very interesting language but I have some questions about how the language is built under the hood as the documentation I can find by Guido doesn't give away all the secrets.
So for the question I am referencing this documentation:
https://python.org/download/...__
So, what does __new__ actually look like inside? Is there a way to see how python itself implements __new__?
I know that the mechanism for C++ malloc and new are well known definitions within that space, but I am having issues understanding exactly what the default __new__ is doing on the machine level.
The documentation I found is great for explaining how to use and override __new__ but it doesn't show what python does it once you hand off operations back to the system.
Any help is greatly appreciated!3 -
Follow up sorta...
So I got pulled into a support issue on a day off. Some system was facing timeouts on our servers so had to investigate.
Over the weekend as part of the release, I released the ELK stack I built and today I used that to help.
Pretty much immediately pinpointed which machine was hanging though still had to investigate and confirm so split between KQL and checking the server logs.
One thing I've always griped about is how no one created schema docs for it mongo collections so can't easily figure out what they do or your to get the document needed.
Well guess it's my turn.... Because only I know the schema :) -
The main difference between macOS and windows/linux is that it has Helvetica, the best typeface to ever exist, built in. When an email arrives, you know it's your fellow Mac user who sent it, so you know they at least take a shower every day, and you don't have to explain things like they're five.
You can use Helvetica for everything. Designers love it. Guess what — all of them have Macs, so things they design look best on your Mac as well. They don't test on windows or any linux.
Linux has the important mission of overthrowing windows as the main desktop OS for normies, and that's a good thing. Valve and Steam OS is a massive step forward. But, if you value your time and want to be surrounded with beautiful things, nothing beats macOS.22 -
General inquiry and also I guess spreading awareness (for lack of a better category as far as I can tell) considering nothing turned up when I searched for it on here: what do you guys think about Sourcehut?
For those who don't know about it, I find it a great alternative to GitHub and GitLab considering it uses more federated collaboration methods (mostly email) mostly already built into Git which in fact predate pull requests and the like (all while providing a more modern web interface to those traditional utilities than what currently exists) on top of many other cool features (for those who prefer Mercurial, it offers first-class repo support too, and generally it also has issue tracking, pastebins, CI services, and an equivalent to GitHub Pages over HTTP as well as Gemini in fact, to name a few; it's all on its website: https://sourcehut.org/). It's very new (2019) and currently in public alpha (seems fairly stable though actually), but it will be paid in the future on the main instance (seems easy enough to self-host though, specially compared to GitLab, so I'll probably do that soon); I usually prefer not to have to pay but considering it seems to be done mostly by 1 guy (who also maintains the infrastructure) and considering how much I like it and everything it stands for, here I actually might 😅2 -
I love linux because i dont have to forced to do frickin update like windows did.
Because i have an experience after update linux mint i cant even start the main GUI program. After boot only show blank console. It seem linux update broke the compatibility between my graphics card.
At least now i dont have to update because thats an option. The output of update is not different than windows.there is a chance you broke your OS.
But the struggle is when i need to install new app in linux. Sometimes need more than hour to find out why it doesnt work from the first time.
Any help here?
So this start from the office. In the office i usually use low spec laptop that work slowly. Then i found this IDE called rapidclipse. Its very promising with GUI builder and can build cross platform mobile app using only java built on top vaadin framework.
When i use it on low spec laptop hackintosh at office it work well although it take more time than other kind of eclipse and i dont need to install any kind of app again, just download-install-create new project-run on tomcat-work well.
Then i go to home to try this new tool , IMO my low spec PC still have more power to run something than old hackintosh. Because usually i use android studio with no problem. In the old hackintosh it went too long to build gradle only.
Then i install rapidclipse, then run desktop shortcut. Then it said i need to install correct java to use correct JavaFX.
After search on SO they said i must install jdk from oracle.
Ok so i got openjdk in my linux.wtf what is the different idk but dont have time to find out.
I install jdk from oracle.
Than finally can open the rapidclipse.
Wow , this gonna be fun.
Then create new project. Just a new project.
So im waiting. I see the progress at 10%. But still no increment on that.
I switch to other app for several minutes.
Then when switched back th app still at 10% and now is at no responding state. So i force close.
After that open rapidclipse again.
The previous new project can be opened. Yay, i think.
But so many error there. Omg.
So i create new project again.
But, but, i just repeated the first error then close again then try it again for several time. But still same output.
After an hour, i give up.
But still, why , just why it work like this. No error or whatsoever.
Back later i have a problem like this on different app.
Idkwhy.1 -
VSCode. I used to be a WebStorm guy, but at one point I found out that I could do like 85% of the stuff in VSCode, and switched over. Things I still kinda miss from the JetBrains ecosystem:
- the elaborate refactoring
- the built-in navigation across the file and the project
- the really clever expand select and go to open/closing bracket (VSCode is kinda getting there, but for expand select it honours camel case words and that can't be turned off, it's weird with HTML files with inlined JS or CSS; for bracket jumping it must rely on an extension)
- the way that everything within the UI is predictable and navigable with keyboard only (tried opening a dropdown in VSCode without having a specific keybinding for that specific dropdown? In WebStorm it was Alt+Up/Alt+Down for any dropdown that has focus IIRC)
- the visual way of changing a colour theme (in VSCode you have to guess what is what before modifying a value; by the way this is an idea for an extension that I might research)
What I like about VSCode:
- the speed (although it can get slow with large files; on the other hand JetBrains IDEs are not that slow except for the startup, given that you're not working on a potato, but here we are)
- its extensibility and very active extension development (and the fact that it's rather easy to write your own extensions, although I haven't benefited from that very much)
- the ease of syncing settings (the Settings Sync extension and now the built-in mechanism introduced I think earlier this month)
- it's free (so I don't have to pay for it myself or nag to my employer to issue me a license)
I've tried Sublime and it's hands down the fastest thing I've seen (it can open a 100 MB text file on the shittiest computer you can find and edit it efficiently), the problem is that it's not so rich in extensions. I've tried vim, nano and whatnot, but I'm far from that, just not my cup of tea. I'm okay for the occasional file edit while SSHd somewhere, but that's all.
In an ideal world we'd have something like Sublime's performance with VSCode's ecosystem and JetBrains', well, brains...1 -
I’ve built a ’self-serve’ inline-app/widget for our customers to book a moving quote appointment themselves. One of the ‘pages’ has a couple address autocomplete form fields. I went with a service called placekit, but used a CDN they offer. There is a more robust node.js library they offer, but couldn’t get it working. To be fair, I am completely new to node.js. I want to learn it, any recommended tuts, or readings? The company I work for is really invested in old technologies, we use SVN still. Does node play well with SVN? The IT lead for my department is opposed to connecting node to our DB, but I think we will be forced to for our upcoming automated testing project, it too is node, that’s what prompted my goal to learn it.2
-
How deep do you go when trying to find a solution?
I have a need for combinations of items. I have used built in functions in Python for this. When I first used those I wanted to learn how they worked internally. I read through the source and thought that was cool. I don't think I really understood that code very well.
Now I need the same solution in C++. There is not a prebuilt combinations function in C++. There is a prebuilt verion of next_permutation. I can build upon that to make my combinations code. However, I am in the middle of trying to make something work. So I found this nice SO question:
https://stackoverflow.com/questions...
The code I ended up using:
template<class RandIt, class Compare>
bool next_k_permutation(RandIt first, RandIt mid, RandIt last, Compare comp){
std::sort(mid, last, std::bind(comp, std::placeholders::_2, std::placeholders::_1));
return std::next_permutation(first, last, comp);
}
template<class BiDiIt, class Compare>
bool next_combination(BiDiIt first, BiDiIt mid, BiDiIt last, Compare comp)
{
bool result;
do{
result = next_k_permutation(first, mid, last, comp);
}while(std::adjacent_find(first, mid, std::bind(comp, std::placeholders::_2, std::placeholders::_1)) != mid);
return result;
}
I am mostly able to figure out what is going on with the templates. I still am not understanding the basic algo behind permutations.
Our data set is tiny. 4 items max. So efficiency isn't really a big issue here.
How long do you spend learning how it works versus just finding a solution for the task at hand?
In general I need to spend more time learning different kinds of algorithms. So I should probably add permutations to that list of ones to study.1 -
Daily coding would be VS Code.
> Lots of extensions and works well if the project isn't too big.
Quick and cheeky edits is Notepad++.
> "Open in Notepad++"
Serverside edits is vim.
> I don't really know any other terminal editors.
IDE would be the IntelliJ platform.
> Its just built very nicely.
For SQL (which i don't do very much) I took a liking to Azure Data Studio. -
I just thought of a potential webapp ideas while talking a shower. Still need to give it some thought but wondering how best to built it out? Sorta like a message board/kiva/change.org
I'm thinking #1 is backend + REST api. Then just create a webapp using React Native so it can be used mobile and browser?
Probably will build the first prototype though using either C# just to test the APIs...
But I guess how do you break a project up. Do you build backend first or do it feature by feature (both backend and frontend)?
And well what about hosting? Do need to decide now like AWS/Heroku... Or can I just build on local? Need a db though...1