Hacker Newsnew | past | comments | ask | show | jobs | submit | aeroxis's commentslogin

I worked at a government contractor and they were deploying a custom Java app on tomcat in windows. Entire team was into manual deployment and I was the DevOps engineer hired to automate. I worked for a year fighting all kinds of pushbacks and ultimately got it done. When I was leaving, the you who was going to run it, said “ansible is too complicated, we don’t need it after you leave.”

And that ladies and gentlemen, is the most useless project I’ve worked on. Hey atleast I got paid I guess.


Shameless plug but I was not a huge fan of working with bash as I liked python, so I made Sultan: https://sultan.readthedocs.io/en/latest/


any reason for this vs. plumbum?


Sultan seems less like bash and more like a Python to me. Not having to pass everything as a list of tokens feels nicer.


Gotta admit, that syntax is a lot easier on the eyes than subprocess.


Thanks for this, very interesting!


pyinvoke (used by fabric, which ansible uses iirc) in in the same vein


It is actually not like you peering through his window to see and note down what you rib one out.

It's more like when I have a massive orgy with lots of drugs at my place and I invited a bouncer, who is really good at statistics, to keep track of who is coming in and who are leaving immediately. The bouncer is also keeping track of what each person is doing, and letting me know periodically. And you both are invited for a night of drug fueled insane sex.

From my perspective, I am doing this to make sure everyone is having fun at my party. From the bouncer's perspective, he is there just to collect stats and let me know. He is not there to invade my privacy. I want to do that. I hired the bouncer.

I think that is more is an accurate description.


The story is only outrage-inducing because you hired a well-known bouncer whose dayjob - of which everyone is aware - is being a security guard at a mall, observing everyone as they do their groceries and banking.


You are the site owner. The bouncer works for you.

Your users didn't hire the bouncer and don't want to be tracked. Secretly, the bouncer may use this data for nefarious purposes. You can't control how the bouncer will use the data.


Exactly, especially if the bouncer comes to work for you for free. Which is what Google and Facebook analytics platforms do: they are free because they benefit from the collected information in ways beyond your control.


What you forgot to mention was that the bouncer does this for free and has a day job publishing tabloids.


And none of the other orgy participants understand this. And OP may not fully understand it either.


There's nothing I enjoy more than a bunch of nerds analyzing a metaphor to death.


My dads mantra used to be, “if it seems too good to be true, it probably is”. Now, I find I must consistently remind him- if it’s “free” (as in beer, not speech) you’re almost definitely paying for it.


Related, when consuming news, if the story seems to involve ridiculous levels of stupidity or malice, the truth is most likely much more mundane and much more reasonable.


That's the site's perspective.

The outrage is from the user's perspective. It's no different from being peeped on.


Sure. But unless you go balls to the wall about it, you're always being "peeped on" when you're online.


I think that's the broader problem that the article is trying to get at. Pornography is just an example that makes it clearer to people that they should care about it.


I evaluated Qt for one of my personal side projects and ended up going to electron for the reasons you mentioned. Electron, while simple to use, feels slow to launch and run on someone with hardware that is a few years older.


Are electron binaries somehow pre-signed?


:-) I'm glad! I love Bash, and I think it is a great tool, but I always end up looking up the Syntax, which is what inspired me to write Sultan.


Sultan is open for contribution. Feel free to put your thoughts in the Issues for features you'd like, and submit any Pull Requests for any issues that already exist.


Since I was creating a tool that works with Commands, I thought of the tag line "Command and Rule Your Shell", and I thought of different types of rulers (Kings, Shahs, Czars, Sultans, etc.). The Sultan name seemed to fit the best.

I was also trying to grow a Handlebar mustache at the time, and I wanted my logo to have a Handlebar Mustache, so that's why the logo has a Handlebar Mustache :-)


Representing each row as an object works, but it ends up having us write custom objects for different result types. When you run Sultan().ls('-l'), you will get back a list of Strings, which you can freely use in Python for your specific needs (like use a Regex to fetch date/times or file size). I felt like this offers developers the best flexibility, rather than trying to customize each output (which will definitely make the codebase very confusing)


You make a very good point. Sultan, at the end of the day, is a syntactic sugar for Subprocess. It has a couple of doo-dads for remote SSH execution, and things like that.

I originally wanted to have Sultan to do exactly what you're saying, but when I started diving into it, it seemed like a task that was very tough to solve. For example, grep's syntax remains similar between OS, but it has some API changes between versions. Trying to figure out what version has what syntax seems a bit daunting, and perhaps impossible to do with all commands.

The usecase that Sultan really caters to is the developer who writes their code on one OS, and keeps that code in the same OS across different environments. Not everyone wants their code to run across different OS and Distributions. I felt like it was a special case to do this, and decided to keep Sultan as generic as possible and let developers build the logic for different OS and Distributions on top of it.

The problem Sultan does solve is code maintainability, reusability within their own project (which assumes the project runs on 1 OS), and testability (unit and integration tests can be written, while you can't do that in Bash easily).


Yes it is. I looked at SH before writing Sultan. I was not very crazy about the syntax. I wanted the code to be easy to read, because one of my primary goals was the code maintainability, and that requires the code to be as readable as possible.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: