Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "packaging"
"You gave us bad code! We ran it and now production is DOWN! Join this bridgeline now and help us fix this!"
So, as the author of the code in question, I join the bridge... And what happens next, I will simply never forget.
First, a little backstory... Another team within our company needed some vendor client software installed and maintained across the enterprise. Multiple OSes (Linux, AIX, Solaris, HPUX, etc.), so packaging and consistent update methods were a a challenge. I wrote an entire set of utilities to install, update and generally maintain the software; intending all the time that this other team would eventually own the process and code. With this in mind, I wrote extensive documentation, and conducted a formal turnover / training season with the other team.
So, fast forward to when the other team now owns my code, has been trained on how to use it, including (perhaps most importantly) how to send out updates when the vendor released upgrades to the agent software.
Now, this other team had the responsibility of releasing their first update since I gave them the process. Very simple upgrade process, already fully automated. What could have gone so horribly wrong? Did something the vendor supplied break their client?
I asked for the log files from the upgrade process. They sent them, and they looked... wrong. Very, very wrong.
Did you run the code I gave you to do this update?
"Yes, your code is broken - fix it! Production is down! Rabble, rabble, rabble!"
So, I go into our code management tool and review the _actual_ script they ran. Sure enough, it is my code... But something is very wrong.
More than 2/3rds of my code... has been commented out. The code is "there"... but has been commented out so it is not being executed. WT-actual-F?!
I question this on the bridge line. Silence. I insist someone explain what is going on. Is this a joke? Is this some kind of work version of candid camera?
Finally someone breaks the silence and explains.
And this, my friends, is the part I will never forget.
"We wanted to look through your code before we ran the update. When we looked at it, there was some stuff we didn't understand, so we commented that stuff out."
You... you didn't... understand... my some of the code... so you... you didn't ask me about it... you didn't try to actually figure out what it did... you... commented it OUT?!
"Right, we figured it was better to only run the parts we understood... But now we ran it and everything is broken and you need to fix your code."
I cannot repeat the things I said next, even here on devRant. Let's just say that call did not go well.
So, lesson learned? If you don't know what some code does? Just comment that shit out. Then blame the original author when it doesn't work.
You just cannot make this kind of stuff up.103
Work your ass off for a month, packaging new software and deploying them. No one says anything.
One of our guys uploads a new autoupdating food menu provided by another company to our intranet. Takes a few minutes.
”OMG! You should be rewarded!”
”Employee of the month!”
”IT award of the month!
”Have my babies!”
Worst interview is the one that actually got me where I am today.
Its been 15 years ago, but I remember very well. Since it was a startup back then they didn't really have any job titles yet or what so ever. I applied for the role of network engineer, heck I didn't care I needed a paycheck.
5 minutes into the interview the smalltalk left the room and they started asking me questions, mainly about me as a person. Eventually it was my turn. After my first question I facepalmed so hard.. Do you guys have any SLA or documentation around here? Heard of ITIL? How is your load balancing?
They stared at me as if I was some kind of alien that had just invaded their little safe planet.. it was hilarious.
An hour later they called me to come back in and sign a contract.. from there on I kind of multi tasked my way around the first year.. bit of network support & design, customer support, sending and packaging orders after 5PM.. god we had long but awesome days.. hence, we were just the 5 of us. Nowadays we've got 150 developers out of 1019 total staff currently.. We also improved interview questions and processes ;)7
"Hey mate, how are you doing?"
*deep sigh* "It's tough, but I'm managing"
I don't think it's a coincidence that the word managing is often used as a synonym for "Technically alive, but not in a state where I can progress personally, or add any value to my environment".
Now imagine packaging that desolate self-perpetuating feeling of apathy into a farce, propped up with practiced smiles and meet-speak, and calling that daily routine a "career".11
What’s wrong with me?... Found myself spreading my finger and thumb on some food packaging cooking instructions hoping to zoom in and read it.5
Very cool gadget. Nice packaging, has few heavier than it looks. I’m impressed 👌 Can anybody guess what it is? 😼29
My former coworker had to mail their work equipment back to me..
6 boxes later..
Open up the first box. A mouse wrapped in about 4ft of heavy duty bubble wrap.. a keyboard box double layered in or.. and my favorite, a restore cd literally wrapped 4 times in bubble wrap. Why?
I'm scared to open the other 5 boxes9
Finally got my Bluetooth earphones!
It's called Pamu Scroll, funded in Indiegogo.
I bought it for $49 without shipping fee.
Now let me write a review about it here after using for about an hour or so.
Shipment from China is slow and hard to track unless it is classified as EMS, which mine wasn't, obviously.
It has some shock protection layer, but without that, nope! It was staying still inside the packaging though.
Beautiful. Just beautiful. Period. Just see the picture below.
It opens as a papyrus, maybe that's why it is called Pamu Scroll. Both the case's end, and earphones itself has magnets to hold each other.
It has a leather feeling to both the inside and outside of the case, and the touch control area of the earphones is also leather feeling, adding a nice touch that differs with other earphonnes.
The diamond feeling finish in the end of the case makes the case itself isn't earphones, more like some expensive jewelry case.
My ears are smaller than most people, for I am young, so it sometimes fall off when I jump, but when I put it the correct way, never falls out.
I am not an audiophile. I don't really care about the audio quality and how it sounds like unless the sound is too cringy and has so many white noise.
This earphones has white noise, but just a little bit, you won't notice except when you are in a quiet room.
The bass is boosted, but low sounds, and vocals can be cringy sometimes, so I should manually tune them with my phone's equalizer.
Not tested yet, but they advertise as using it in the shower.
7. Stereo call
Yup. Stereo call. Call in both ears. But only right microphone seems to get the voice.
Using BT 5, it is a breeze to connect.
Take both of them out, put to your ear, then ding! "Connected"
wireless charging for optional purchase - 10 bucks
You have 3.5 hrs of listening time in both ears, and you can charge 2 times more each by putting in the case.
Overall, it is awesome and let's just pray it doesn't break for at least for an year.
One side note, I can activate assistant by double tapping in the left ear (yes it is touch control), but my S8 asks me if I want to customize with Automate/Tasker. Yup!
Will share that later as well.
If you have any questions, ask me! Thanks for reading my first ever product review in devRant! <311
Why python can't into proper dependency management?
I Node.js we use npm. Modules are downloaded per project and packaging is easy.
In Java we use maven/gradle. Never been so easy to build and download libraries and package your project.
But in Python? No, it's not easy. You have to use virtualenv first so pip/anaconda won't download globally, then you must write setyp.py in a million different ways. Packaging and distribution to clients? Good luck with that.21
As a junior dev from a sysadmin and security background, this is a list of software development concepts I never seemed to truly understand but hope to(rated from most intimidating to least):
2) Machine Learning, Deep Learning and A.I- too much math that fucks with my brain.
3) low-level programming(kernel,drivers) - sounds extremely interesting but the code in assembly/C/C++ looks like Linear A Minoan hieroglyphics.
4) Rx(insert language here) - I never get why it is useful or why someone invented this. Seems interesting though.
5) Code Reflection - sounds like Thelemic magick.
6) Packaging, automation, build tools, devops, CI, Testing -seems too complicated. I just want to run an executable at the client or make a web app that does something. Why all this process?6
What I'm doing now, writing a JS library for a simple kitchen timer (like, something that can be wound up, is ticking, can be paused, etc). Here's a list of neat stuff I've learned:
Polyfilling as a lib author (I decided against it).
Packaging the lib (using Rollup, ES6 modules are totes cool).
Using flow to add static typing in strategic places (started appreciating types in JS since reading up on functional programming).
Modelling state and transitions using an explicit state machine. (Fucking finally. There's usually an implicit state machine somewhere, only spread out all over the app...)
Using mostly side-effect free methods, being very explicit about when and why things are mutated).
Test-first/TDD (ish) using Jest and the awesome Wallabyjs.
Freeing up mental capacity by letting Prettier format my code for me (it was hard to let go but totally worth it).
Started using git.
Did all work on Ubuntu after pretty much a lifetime of Windows (initially to separate work from gaming) and finally swapped MS Visual Studio for Atom.
When it's finished I'm going to publish it on GitHub, which will also be a first for me. Might try out some CI platform while I'm at it.
tl;dr: wrote some js, felt good2
I was getting bored with programing cause a majority of it is boilerplate code then i heard of the Mirai virus. It infected alot of iot devices so I decided to look at it and it was written in golang. It is a beautifully written botnet even though they're parts where it could have been better. So i looked more into golang and saw that it could cross compile pretty easily and could build self contained binaries really easily. On top of all this i saw the smallest docker containers with golang programs so i looked into it more and kept finding more and more that i liked. Easy library packaging, concurancy without boilerplate, quick servers, and the libraries from other devs that did all kind of great things3
First, I want to say don't look this company up if you've never heard of them. I really don't want to be a reason to drive more traffic to this company, because I really don't trust them.
So someone gifted me some coffee called Javy Microdose Coffee.
The reviews online are obvious plants and there was a hard social media promo going on for the last few months, so I'm already not interested in even trying it.
The packaging and colors scare the shit out of me, and the bottle itself doesn't seem to have a break seal on it. Besides that the bottle itself reminds me of the bottles of poison that were around when I was a kid.
My questions; has anyone on here ever consumed this terrifying bottle of liquid? Is it worth it?
"Configuring incomplete, errors occurred!" Ok, I get that. But would it kill you to tell me what errors? If you behave like an asshole, I'll hate you as well!
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
Rant time. Oh boi.
So, a bit of context: I am a university student in Greece and I have a desktop PC with elementary OS on it. When the unis closed down because of Coronavirus, I moved back to my parents', without my PC, only a usb stick with elementary OS installed on it. That was before the lockdown. My parents have a desktop PC and my old laptop, both with Windows rn. I'm only able to work using Linux, so I've been just popping that elementary OS USB stick whenever I needed to work.
All cool and good. Until the usb got full. It was a 16GB one after all. No biggie, I bought a new 64GB one from a well known Greek tech shop along with a webcam my mother needed. It was a LEXAR one.
They fucking took a week to transfer it. As if the closest shop to me was in fucking Germany. For context, the drawing tablet I bought from China the other day only did 2 weeks to come. During this time I could barely use Linux because my USB stick had only some 600MB free.
Ok, wtv I said to myself. I am a patient person after all. I received the USB stick, along with the webcam, in good condition, in their packaging. Alright. I dd'ed everything from the 16GB stick to the 64GB one and then I extend the partition. Everything works flawlessly. And it's faster too.
Next day, I boot up from it again. It boots up good. Nice, time to do some work. I open my editor. And it fucking freezes. The editor is not some VSCode or Atom or any of that heavy shit, it's just elementary OS Code. A very lightweight Gtk3 app. Strangely though, the rest of my OS (the dock autohide, eg.) Seems totally responsive. I try to open another app. No luck. Not even switching TTYs work. Good shit. I force shutdown my PC. I try to boot again from that piece of shit. And guess what! NO BOOT BITCH. Like, fuck you. I boot from my previous 16GB one. Linux won't recognize it. No /dev/sdc like I used to have. Ok, lsusb. Nope, nothing. I disconnect it and reconnect it, and lsusb. An empty entry appears.I run it a couple of times, and the it disappears again. I switch to TTY 2. I get read errors and usb error -71.
And I want to fucking explode
I call back to support for the warranty coverage. I wait for a good 10 minutes and a nice lady picks up. I tell her the issue. She says that the support team will call me for the issue this day it the next day.
I hang up.
It feels like some fucking prank. YOU MOTHERFUCKING TOOK SO LONG TO DELIVER MY SHIT. Not to mention that the shitty courier service they are working with wouldn't deliver the goods to my home because it's slightly out of town. AND NOW YOU ARE DELAYING MY WARRANTY RETURN? HOW THE FLYING FUCK DID YOU BECOME A WELL KNOWN TECH SHOP WITH SUCH SHITTY SERVICE?
IF YOUR BRAINS WERE DYNAMITE YOU WOULDN'T HAVE ENOUGH TO BLOW YOUR NOSES.
YOUR THE SERVICE EQUIVALENT OF A PARTICIPATION AWARD.
Foreigners' view of Greeks suddenly doesn't seem so unreasonable. Yes, we are fucking lazy asses. And we also hate that. We hate each other for that very reason. May this country not live any longer.6
TL;DR: if you are using using react native, use firstname.lastname@example.org, any newer version might break your project
I wonder how many react native projects the boys at Mishoo fucked up, mine included.
I spent 5 work days to find an unrelated issue on RN's git which had the solution to my issue in the comments which was totally different from what was being presented in the issue.
Spends 9 months on the side developing a library for analysis of a specific programming language. No help, entirely my own work. There's various tools built upon this library. Incorporates project management, an effective build system capable of parallel and distributed builds, a packaging system...
Beta release the library. Wait four months. Ask the community for who's been using it so I can get feedback and other comments. Majority of the comments follow a specific pattern.
"You don't support X, how dare you!?"
One, this is free software, pay me if you want specific things.
Two, I'm the only developer of a project usually undertaken by a small team.
Three, yes it does you fucking invalid... Every fucking time someone claims it doesn't support some feature, it's something I've already written and validated. I swear to fucking God users can't find something themselves and instead of checking the Wiki or asking for help, they blindly assume they can't make mistakes and it must be my defect.1
Python, fuuuuck youuuu and your stupid packaging system, and python devs who are bashing on js you douchebags ever tried NPM !!26
So for the past one month I'm working on an enhancement in a product coded in C++ and shell script, running on RHEL. After toiling away for almost 10 hours/day for a month, the enhacement is ready. Coded, tested, documented. Ready to ship.
The client is supposed to recieve the update as a drop. 1 day before the drop is scheduled to be released to Quality Control, I fire an overnight build on the build machine, update the change request ticket, update other related tickets, inform QC of the drop to be released tomorrow. On the D-day, I package the drop using the company's painfully arduous method. Everything is ready by the evening, and the drop is good to go.
At 7pm (one hour before the drop is to be released), Jack fucking Jack-o-lantern (one of the top most exec in the company) tells me that the default value of the parameter introduced in the enhancement, needs to be changed from 86400 to 1500. HALF AN HOUR BEFORE THE DROP IS TO BE RELAEASED!
Now here I am, changing the value in over 25 files, followed by firing an overnight build, followed by sanity testing, change specific testing, followed by drop packaging, followed by inform QC that the drop will be delayed.
All because fucking jack-o-lantern wanted to change the fucking default value.
GOOD FOR YOU FUCKING JACK.2
I've been working with Node and Typescript for a while now, and I wrote a wide array of very general utility functions. Examples include:
- Array.filter but you also get the residue array, it can also leave holes in both arrays if you want to join them later
- Array zipping and unzipping to and from tuples (especially valuable when you're manipulating the prop set with Object.entries() in a HOC
- Array maximum selection, with an optional mapper
- Cancelable promises, lazy promises, a promise that resolves when a given function on an object is called (excellent for DOM events), a timeout promise.
- A typed event with both immediate and microtask listeners depending on whether you need state guarantees (this idea I took from a Github gist and upgraded it)
I want to put them on NPM so I don't have to write them and their tests again, and so that if I ever think of an improvement it's easier to propagate it. Do you think I should release them as tiny individual packages which would be nice from a versioning standpoint, or should I make them into a compilation which would be a lot less work for me (and therefore would probably result in better documentation and more tests)?4
C# and VS have the worst packaging system of any language. I have errors about packages not being found from WITHIN THE SAME SOLUTION1
Little, sad story:
dotnet add package Microsoft.Extensions.Configuration.Json
error: There are no versions available for the package 'Microsoft.Extensions.Configuration.Json'
There is no microsoft packaging technology that works out of the box. Ever.2
I just started maintaining a few AUR packages, and I got to say it's rather fun and rewarding, just to know that your responsible for making sure that something is up to date, and that no one using the package is getting anything bad.2
So many changes over the past few months. Transitioning from a freelance logo / print / packaging designer. Going full stack web developer. Even switched from adobe CC to Sketch for my design needs. What a ride. Everything I come across is new territory. I’m like a newborn baby. The struggle.
I need some advice to avoid stressing myself out. I'm in a situation where I feel stuck between a rock and a hard place at work, and it feels like there's no one to turn to. This is a long one, because context is needed.
I've been working on a fairly big CMS based website for a few years that's turned into multiple solutions that I'm more or less responsible for. During that time I've been optimizing the code base with proper design patterns, setting up continuous delivery, updating packaging etc. because I care that the next developer can quickly grasp what's going on, should they take over the project in the future. During that time I've been accused of over-engineering, which to an extent is true. It's something I've gotten a lot better at over the years, but I'm only human and error prone, so sometimes that's just how it is.
Anyways, after a few years of working on the project I get a new colleague that's going to help me on my CMS projects. It doesn't take long for me to realize that their code style is a mess. Inconsistent line breaks and naming conventions, really god awful anti-pattern code. There's no attempt to mimic the code style I've been using throughout the project, it's just complete chaos. The code "works", although it's not something I'd call production code. But they're new and learning, so I just sort of deal with it and remain patient, pointing out where they could optimize their code, teaching them basic object oriented design patterns like... just using freaking objects once in a while.
Fast forward a few years until now. They've learned nothing. Every time I read their code it's the same mess it's always been.
And this is just the frontend part of the code. The backend is often orders of magnitude worse. They will - COMPLETELY RANDOMLY - sometimes leave in 5-10 lines of whitespace for no discernable reason. It frustrates me to no end. I keep asking them to verify their staged changes before every commit, but nothing changes. They also blatantly copy/paste bits of my code to other components without thinking about what they do. So I'll have this random bit of backend code that injects 3-5 dependencies there's simply no reason for and aren't being used. When I ask why they put them there I simply get a “I don't know, I just did it like you did it”.
I simply cannot trust this person to write production code, and the more I let them take over things, the more the technical debt we accumulate. I have talked to my boss about this, and things have improved, but nowhere near where I need it to be.
On the other side of this are my project manager and my boss. They, of course, both want me to implement solutions with low estimates, and as fast and simply as possible. Which would be fine if I wasn't the only person fighting against this technical debt on my team. Add in the fact that specs are oftentimes VERY implicit, so I'm stuck guessing what we actually need and having to constantly ask if this or that feature should exist.
And then, out of nowhere, I get assigned a another project after some colleague quits, during a time I’m already overbooked. The project is very complex and I'm expected to give estimates on tasks that would take me several hours just to research.
I'm super stressed and have no one I can turn to for help, hence this post. I haven't put the people in this post in the best light, but they're honestly good people that I genuinely like. I just want to write good code, but it's like I have to fight for my right to do it.1
Finally some real vacation. Heavily needed. Can't stand that type of remote work any more. Our dailies and pull requests have become mere dick-measuring contests. Morally puffed statements about THE RIGHT way to do agile and clean code, and architecture. Endless vacuous, monologues, which they only endure so they can start our own - but shit just does not get done.
And then they don't want to invest only a day or some hours to get some integration tests running on more machines, which could save the one overworked tester we have a lot of work. But whatever. I've lost all motivation and hope. Shall they deal with their own shit. Maybe I just need more sleep or some antidepressants, because I'm really fed up with it.
Makes we wonder why I even fought this battle of the last two weeks, when thanks to Apple's changes in macOS's codesigning our new binary wouldn't run on any "real" machine. But according to them packaging and signing is only a trivial issue, nothing to do with code. Yeah, well, then they should do that shit themselves next time.1
Any c++ devs here,im looking for an explanation on how to distribute c++ packages with dependant libraries.what methods are there to make sure that every person who receives your application can use it without installing any libraries or dependancies.im currently developing on linux.2
fuck electron packaging. fuck it. wasted 4 days in packaging. they need to fix it for the fuck's sake2
Package build fails on Jenkins. I try to investigate locally. Builds fine locally. Managed to convince admin to let me ssh there to debug there in the exactly same environment. Builds there without any issues when triggered manually. I'm missing some little piece of environment from jenkins job or there could be some race somewhere. I really hate those random errors, we really need to get sane build system so I wouldn't need to debug those irreproducible build issues. Aaarrrghh!!!
Reading https://en.wikipedia.org/wiki/... and this quote struck me as quite poignant:
On two occasions I have been asked, "Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?" ... I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
— Charles Babbage, Passages from the Life of a Philosopher
Basically realised this is 90% of my clients.
A colleague and I were musing about how warped ones understanding of fundamental reality must be to expect this, but then I realised that actually, their understanding is actually far more sophisticated than ours! Here we are boxed into our pissant Euclidean physics, and what they are looking for in software is the equivalent of a Tenet Turnstile, capable of reversing entropy to make sense out of their garbage data!
Incredible! Now that I understand their ingenius vision, I will get to work on the trivial task of writing the 'Algorithm' and packaging this in .NET application (because to those who cannot actually DO, ideas are everything and execution is nothing 🙄).
Once I do I'm honestly not sure if I'm going to use that to make sense of their data or just get in touch with Sator1
The feeling you get when the people in charge of packaging and installation of the product can't give you an answer to the question: "How is the product packaged, so I can include the new features?"
Modern Packaging is a leading packaging company in India, We are offering the Air Bubble Pouch Manufacturer Products...