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 - "bash scripting"
-
A story about how a busy programmer became responsible for training interns.
So I was put in charge of a team of interns and had to teach them to work with Linux, coding (Bash, Python and JS) and networking overall.
None of the interns had any technical experience, skills, knowledge or talent.
Furthermore the task came to me as a surprise and I didn't have any training plan nor the time.
Case 0:
Intern is asked to connect to a VM, see which interfaces there are and bring up the one that's down (eth1). He shuts eth0 down and is immediately disconnected from the machine, being unable to connect remotely.
Case 1:
Intern researches Bash scripting via a weird android app and after a hour or so creates and runs this function: test(){test|test&}
He fork-bombed the VM all other interns used.
Case 2:
All interns used the same VM despite the fact that I created one for each.
They saved the same ssh address in Putty while giving it different names.
Case 3:
After explicitly explaining and demonstrating to the interns how to connect to their own VMs they all connect to the same machine and attempt to create file systems, map them and etc. One intern keeps running "shutdown -r" in order to test the delay flag, which he never even included.
Case 4:
All of the interns still somehow connect to the same VM despite me manually configuring their Putty "favorites". Apparently they copy-paste a dns that one of them sent to the entire team via mail. He also learned about the wall command and keeps scaring his team members with fake warnings. A female intern actually asked me "how does the screen knows what I look like?!". This after she got a wall message telling her to eat less because she gained weight.
Case 5:
The most motivated intern ran "rm -rf" from his /etc directory.
P.S. All other interns got disconnected because they still keep using his VM.
Case 6:
While giving them a presentation about cryptography and explaining how SSH (that they've been using for the past two weeks) works an intern asked "So is this like Gmail?".
I gave him the benefit of the doubt and asked if he meant the authorization process. He replied with a stupid smile "No! I mean that it can send things!".
FML. I have a huge project to finish and have to babysit these art majors who decided to earn "ezy cash many" in hightech.
Adventures will be continued.26 -
This code review gave me eye cancer.
So, first of all, let me apologize to anyone impacted by eye cancer, if that really is a thing... because that sounds absolutely horrible. But, believe me, this code was absolutely horrible, too.
I was asked to code review another team's script. I don't like reviewing code from other teams, as I'm pretty "intense" and a nit-picker -- my own team knows and expects this, but I tend to really piss off other people who don't expect my level of input on "what I really think" about their code...
So, I get this script to review. It's over 200 lines of bash (so right away, it's fair game for a boilerplate "this should be re-written in python" or similar reply)... but I dive in to see what they sent.
My eyes.
My eyes.
MY EYES.
So, I certainly cannot violate IP rules and post any of the actual code here (be thankful - be very thankful), but let me just say, I think it may be the worst code I've ever seen. And I've been coding and code-reviewing for upwards of 30 years now. And I've seen a LOT of bad code...
I imagine the author of this script was a rebellious teenager who found the google shell scripting style guide and screamed "YOU'RE NOT MY REAL DAD!" at it and then set out to flagrantly violate every single rule and suggestion in the most dramatic ways possible.
Then they found every other style guide they could, and violated all THOSE rules, too. Just because they were there.
Within the same script... within the SAME CODE BLOCK... 2-space indentation... 4-space indentation... 8-space indentation... TAB indentation... and (just to be complete) NO indentation (entire blocks of code within another function of conditional block, all left-justified, no indentation at all).
lowercase variable/function names, UPPERCASE names, underscore_separated_names, CamelCase names, and every permutation of those as well.
Comments? Not a single one to be found, aside from a 4-line stanza at the top, containing a brief description of that the script did and (to their shame), the name of the author. There were, however, ENTIRE BLOCKS of code commented out.
[ In the examples below, I've replaced indentation spacing with '-', as I couldn't get devrant to format the indentation in a way to suitably share my pain otherwise... ]
Within just a few lines of one another, functions defined as...
function somefunction {
----stuff
}
Another_Function() {
------------stuff
}
There were conditionals blocks in various forms, indentation be damned...
if [ ... ]; then
--stuff
fi
if [ ... ]
--then
----some_stuff
fi
if [ ... ]
then
----something
something_else
--another_thing
fi
And brilliantly un-reachable code blocks, like:
if [ -z "$SOME_VAR" ]; then
--SOME_VAR="blah"
fi
if [ -z "$SOME_VAR" ]
----then
----SOME_VAR="foo"
fi
if [ -z "$SOME_VAR" ]
--then
--echo "SOME_VAR must be set"
fi
Do you remember the classic "demo" programs people used to distribute (like back in the 90s) -- where the program had no real purpose other than to demonstrate various graphics, just for the sake of demonstrating graphics techniques? Or some of those really bad photo slideshows, were the person making the slideshow used EVERY transition possible (slide, wipe, cross-fade, shapes, spins, on and on)? All just for the sake of "showing off" what they could do with the software? I honestly felt like I was looking at some kind of perverse shell-script demo, where the author was trying to use every possible style or obscure syntax possible, just to do it.
But this was PRODUCTION CODE.
There was absolutely no consistency, even within 1-2 adjacent lines. There is no way to maintain this. It's nearly impossible even understand what it's trying to do. It was just pure insanity. Lines and lines of insanity.
I picture the author of this code as some sort of hybrid hipster-artist-goth-mental-patient, chain-smoking clove cigarettes in their office, flinging their own poo at their monitor, frothing at the mouth and screaming "I CODE MY TRUTH! THIS CODE IS MY ART! IT WILL NOT CONFORM TO YOUR WORLDLY STANDARDS!"
I gave up after the first 100 lines.
Gave up.
I washed my eyes out with bleach.
Then I contacted my HR hotline to see if our medical insurance covers eye cancer.32 -
Woken up early by a WhatsApp message, classmate asked a stupid bash scripting question. Replied with profanity and foul language.
Turns out it was the official chat group with faculty and everyone. FML7 -
Me a while ago talking to a recruiter over the phone. This was for a C++ dev position.
(R)ecruiter : So except for the development things, we are looking for someone who has experience configuration linux. Do you have any experience with that?
(M)e : Sure, I use Linux all the time. What do you mean.
R : Well, Just using Linux isn't enough for this position, you need to have experience in configuration Linux.
M : Well. I can't answer your question if you don't specify what you mean. Do you mean that I need to be able to install my own packages? Set up my dev environment? Bash scripting? Being able to configure my bash profile to have good aliases? Use Linux to develop software? Because I can do all of these.
M : Or do you need someone who can write Kernel modules for the OS, because I don't have any experience in that but would like to learn.
R : Oh, I don't really know what it means. But the paper says that you need to have experience configuration Linux. So what would you say your experience with that is?
Me internally : JESUS CHRIST I JUST TOLD YOU WHAT I KNOW AND WHAT I DON'T KNOW HOW ARE YOU GOING TO ASSESS ME CORRECTLY.
Me 😎 : I use Arch and you have to set it up completely from the ground by your self so I know everything there is to know.
Basically every question was like this with the recruiter. I got further in the process but quit because the workplace looked like it would drain my soul when I got interviewed by the employees of the company.
Jesus Christ though, some recruiters could be replaced by an automated phone system.17 -
It's vacation for me for two weeks of which one week will be a vacation outside the country and one will be home-time.
Will work on redesigning my entire server 'infrastructure' and an automated website/openvpn/whateverthefuckiwanttodeployorwhatever system solely written in bash/shell scripting.
Partly because it's awesome to learn new Linux-related stuff and partly because I really want to have this functionality and would love to write it myself.
Also working on three side projects of which two will become a service and one will be released into the open :)
But, tomorrow will be dancing my ass off to quite some of my favourite producers :D8 -
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 -
!rant
A rather long(it's 8 hrs long to be precise) story
So I just finished an amazing homework assignment. The goal was to open a new shell on Linux using a C program. We were asked to follow instructions from http://phrack.org/issues/49/14.html . However the instructions given were for 32 bit processors and we had to do same for 64 bit machines. In a nutshell we had to write a 64 bit shell code and use buffer-overflow technique to change the return address if the function to our shell code.
I was able to write my own shellcode within 1hr and was able to confirm that it's working by compiling with nasm and all. Also the "show-off-dev" inside me told me to execute "/bin/bash" instead of "/bin/sh"(which everyone else was going to do). After my assembly code was properly executing shellcode, I was excited to put it in my C code.
For that, I needed opcodes of assembly code in a string. Following again the "show-off-dev" inside me, I wrote a shell script which would extract the exact opcodes out of objdump output. After this I put it in my C code, call my friend and tell him that "hell yeah bro, I did it. Pretty sure sir is gonna give me full marks etc etc etc". I compiled the code and BOOM, IT SEGFAULTS RIGHT IN FRONT OF MY FRIEND. Worst, friend had copied a "/bin/sh" code from shellstorm and already had it working.
Really burned my ego, I sat continuously for 8 hrs in front of my laptop and didn't talk to anyone. I was continuously debugging the code for 8 hrs. Just a few minutes ago, I noticed that the shellcode which I'm actually putting in my C code is actually 2 bytes shorter than actual code length. WHAT THE F. I ran objdump manually and copied the opcodes one by one into the string (like a noob) and VOILA ! IT WORKED !!!
TURNS OUT I DIDN'T CUT THE LAST COLUMN OF OPCODES IN MY SHELL SCRIPT. I FIXED THAT AND IT WORKED !!
THE SINGLE SHITTY NUMBER MADE ME STRUGGLE 8 HRS OF MY LIFE !! SMH
Lessons learnt :
1)Never have such an ego that makes you think you're perfect, cuz you're retarded not perfect
2)Examine your scripts properly before using them
3)Never, I repeat NEVER!! brag about your code before compiling and testing it.
That's it!
If you've read this long story, you might as well press the "++" button.6 -
A. Java at work and on my android app
B. Python for machine learning
C. Shell scripting for work and personal projects
I am writing echo in python and import in bash. My brain is like a soup now.3 -
When I wrote a script to automate my commits to SVN... And then used that script to commit itself.... Pure bliss :)4
-
This snippet was found in Thanos’ bash history:
```
ps Sh | sort -R | awk 'NR % 2 {print $1}' | xargs sudo kill -9
```joke/meme shell script thanosdidnothingwrong avengers joke marvel scripting snaps that hurt in prod thanos bash -
Powershell should die.
I have a simple bash script I made that allows me to download almost any video from the internet. Works great and took me only a few minutes to make.
The only issue is it bash meaning Windows doesn't run it natively. I am not able to install linux Subsystem or bash, etc on the server.
So I decided to rewrite it in powershell thinking it should be Okay and I have never struggled with so much retardedness in my life. After 40+ tabs in chrome and a massive headache, it finally works.
Microsoft should kill powershell entirely and rethink their scripting language.
Also VBA should have died 10 years ago.16 -
I finally fucking made it!
Or well, I had a thorough kick in my behind and things kinda fell into place in the end :-D
I dropped out of my non-tech education way too late and almost a decade ago. While I was busy nagging myself about shit, a friend of mine got me an interview for a tech support position and I nailed it, I've been messing with computers since '95 so it comes easy.
For a while I just went with it, started feeling better about myself, moved up from part time to semi to full time, started getting responsibilities. During my time I have had responsibility for every piece of hardware or software we had to deal with. I brushed up documentation, streamlined processes, handled big projects and then passed it on to 'juniors' - people pass through support departments fast I guess.
Anyway, I picked up rexx, PowerShell and brushed up on bash and windows shell scripting so when it felt like there wasn't much left I wanted to optimize that I could easily do with scripting I asked my boss for a programming course and free hands to use it to optimize workflows.
So after talking to programmer friends, you guys and doing some research I settled on C# for it's broad application spectrum and ease of entry.
Some years have passed since. A colleague and I built an application to act as portal for optimizations and went on to automate AD management, varius ssh/ftp jobs and backend jobs with high manual failure rate, hell, towards the end I turned in a hobby project that earned myself in 10 times in saved hours across the organization. I felt pretty good about my skills and decided I'd start looking for something with some more challenge.
A year passed with not much action, in part because I got comfy and didn't send out many applications. Then budget cuts happened half a year ago and our Branch's IT got cut bad - myself included.
I got an outplacement thing with some consultant firm as part of the goodbye package and that was just hold - got control of my CV, hit LinkedIn and got absolutely swarmed by recruiters and companies looking for developers!
So here I am today, working on an AspX webapp with C# backend, living the hell of a codebase left behind by someone with no wish to document or follow any kind of coding standards and you know what? I absolutely fucking love it!
So if you're out there and in doubt, do some competence mapping, find a nice CV template, update your LinkedIn - lots of sources for that available and go search, the truth is out there! -
Got my first Webdev job at a small marketing company, felt very lucky as I didn't have much experience. Turns out I'm the only one that could program. The other guys just use Wordpress. It felt wrong at first, using plugins instead of developing, but we got results and clients were happy. I felt like there was a lot less to this development thing than I'd previously thought! And so we continued.
But I noticed that some of our more plugin heavy sites (not made by me - these were made in some drag/drop Wordpress interface) were running slow. I mean 15 seconds load time slow. I joined devRant around the same time and discovered that no - this is not what normal development actually is. Wordpress seems universally hated. Thank god, because something seemed very wrong!
So with us getting complaints all over the place over page speed from relatively high-profile clients, I've gone and set up a script on a server that downloads the whole front end of these Wordpress sites and serves them up instead of the 'real' thing. Did I mention that there's basically no dynamic content on most of these sites? It works like a charm! I'm now trying to figure out how to get forms and route them into the real, hidden version of the site, as well as automatically updating the html views whenever the client changes anything in the Wordpress backend. Not sure if this has fixed the problem or just enabled bad practice, but I don't think I'm going to be able to stop the others from doing things this way...
For the record, yes there are plugins that do similar stuff but I thought it'd be nice to never use plugins again! And hey, I got to learn all about bash scripting so I can't complain.
For real though, I didn't quite realise how bad the Wordpress thing really was until I came here. Thanks for making me aware, all!7 -
Wasn't given a chance to test out of a scripting(bash, python, perl) class for my Bachelor's program. To "rebel" I finished all the assignments during this first week of the semester and have a perfect 100% in every one.
At least the assignments were fun.
Take that <school name redacted>!1 -
You mother fucking piece of shit.
Whoever taught you programming should be removed from history.
And whatever form of intelligence you claim to possess, let me assure you: breathing is the limit of it.
--
Some of the projects I'm working on are really the epitome of "YOLO let's turn the poopomat machine on in diarrhea mode".
The worst: I cannot really give examples.
I've seen the last days everything.
(bash scripting, docker, services like nginx /haproxy/...)
Eval as an template generator in bash...
Declaring an whole environment in an Dockerfile, that should never be used as it is only necessary for building... But not checking if an env file is provided, so the whole thing can blow up spectacularly.
A nearly 1k long bash calculator for system limits, reading out all kinds of stuff from /proc and /sys, seemingly partially stolen from NGINX Docker.
Declaring and starting an own DNS Server to bypass the Docker DNS service inside an docker container.
Mkfifo fun for creating several stdout and stderrs for seemingly no reason...
Actively not using bash, instead of creating shell only functions to emulate bash...
I could go on.
But really. I'm getting too old for this shit.3 -
So I am finally plunging into continuous integration. If I make one more deploy script mistake, I've lost enough time to merit having learned a better solution than bash scripting calling git and rhc and py files I wrote. I have failing tests that are failing because they weren't updated after the million and a half urgent changes in the past 2 months, so it's time to act like I am a TDD fanatic and write the tests correctly. So much work. All from me listening to the constant req changes, listening to the urgency, letting non-devs get under my skin if you will. I'm optimistic in all the wrong places - I think I can write that by end of day let's try it. I'm lazy in the wrong places - I think that I can write that test later, because all I changed was XYZ (which took all night but I said I'd get it as close as possible didn't I?). And I think these handful of bash scripts are good enough to make sure I run tests? But remember, I didn't write the tests or I didn't go back and update them. Or the tests that fail, I'm too lazy. And so much of the tests, I would need to use, idk selenium for, and damnit if I really don't want to dig for element IDs to wait for every time I need an AJAX call.
Okay wow, I really did rant here. And discredited myself a bit lol I need to ignore the wrong lazy and embrace the right lazy. Protect myself from myself and from contributors. It really is, up to me now, to rescue myself from my bad habits. Bad habits perpetuated by clients urgency every day, to change things, that should have been finalized in November if we wanted a stable flipping system in January. It feels like the blind (client) leading the blind (me, when I do dumb shit like rush features out the door half tested).
Anyway all this came out, because I have been reading about continuous integration and stumbled upon this quote. And thought someone might laugh at the anachronism like I did2 -
Yay! My first bash project :D
disclaimer - my bash is not pretty. yet.
Why I created it?
I encountered several footlong scripts in a new project at work. And they had no logging. And I am in charge of making it sing again. So here it is a tiny logging framework.1 -
I hate bash scripting so much !
What a shit language, its inconsistent af
Its just a pile of hacks upon hacks upon hacks. Theres no rime or reason to bash expansion, or to working with arrays.
Sometimes "$@" is a list, sometimes its not... Because fuck u thats why
So im doing a coding project at work, that has to be in bash for reasons.
It already feels like giving birth, llms are hard-carrying me and im not proud of it
And every time i think im done, and i can close this fucking epic, some issue pops up that necessitates a re-write
3rd one is also a no go apparently
And this all happened because *someone* in another department couldn't be fucked to implement the proper solution for this.
The scope of this piece of shit script keeps growing, because every month they be like
"oh this feature of service xyz ? Nah turns out we cant do that sowwy. But you can implement a workaround in bash right??
If you truly like bash as a language, you're cooked brother. you need to seek professional help :skull:12 -
!rant
Question for all the people who know bash around here. Is there a standard for bash scripting? Kinda how like PHP has the PSR standard. I've downloaded a couple of pdfs from various sites but none have been an actual standard.4 -
It all starts with a small regex script to automate my coding session. Now I start to automate every shit I used to hate (without notice it).
Where was Python all my life. Where was it when I have to configure my server, run integration tests or benchmark all by myself. The past was really scary 😂5 -
My newest BASH project: reactive BASH
:)
Yes, I do like shell THAT much!
Since today my bhttp lib supports STOMP [still need to work on 1.2 compliance], i.e. I can carry out live communication with MQ. Meaning I can script the whole thing, be it 5 calls 5 reads, be it 20 subscriptions and reacting to unlimited number of messages in either of them with separate actions. WITHOUT A FOREST OF IF-ELSEs OR CASE-ESACs!!!
Boi do I love shell scripting... :D
Next project: AI in BASH3 -
Age 8 - Gets first computer and struggles with dial up Internet and my parents yelling at that they ended to use the phone
Ages 12 to 18 - Gets first laptop, starts messing around and interested in websites, gets involved with SMF, and open source message board system written in Php, and starts helping people out, eventually getting paid work for setting up websites etc.. which lead onto learning html/CSS and picking up bits and pieces of Php (and also Photoshop/Illustrator etc..)
Age 18 - Goes to college to study Multimedia, refreshes knowledge of HTML/CSS, learns a bit of Actionscript and some PHP
Age 20 - finishes Multimedia degree, ends up working as an IT consultant for a small business, which leads me to pick up a bit of bash scripting, small hit more PHP. Leaves this after 3months and decides to do a small Software Dev course. Get my first taste of Java and Visual Basic there
21 - Enter into a Software Dev degree. Dive deep into Java and a small bit of Javascript.
23 - After 2nd year of college get taken on an internship with a large multinational where I learn and get hands on experience with Angular, JS, Coffeescript and C#
Present Day - currently coming up to the end of my degree and can switch between Java, C#, Python, Coffeescript/Javascript (front-end or Node) , C and Golang, C and Python introductions from college modules which I kept playing with in my spare time, Golang I just heard of and decided to write a few things in it because why not, I've picked up various frameworks (spring, echo, express etc.) at some point. I basically learn by doing, if something interests me and I enjoy it, I seem to pick it up quickly by diving in and trying to use it.1 -
- Played with and learned Scratch
- Learned some Python, made some weird little programs
- Learned C, using two good books: K&R C and Zed Shaw's "Learn C the Hard Way" (back when it was still in development and was free to read on the internet)
- Made LOTS of programs in C
- Came back to Python when I wanted to learn network programming
- Learned some Racket/Lisp, Bash scripting along the way
- Now I use all of the above, minus Scratch -
Did I ever mention how much I hate reading through perl scripts?
Seriously, I can read through BASH hell anyday, Python's fine, PHP... But out of all of the scripting languages, Perl is just something that makes me want to scratch my eyes out.
It doesn't help it used to be the sysadmin's language of choice in the past.
Perl just hurts my brain.5 -
Hello! My name is opalqnka and I am a Windows user.
I followed the 12-step program and now I am a step away to being certified LPIC Linux Engineer.
As step 12 preaches, here I humbly share the Program:
1. We admitted we were powerless over Windows - that our lives had become unmanageable.
2. Came to believe that a Power greater than ourselves could restore us to sanity.
3. Made a decision to turn our will and our lives over to the care of Linus as we understood Him.
4. Made a searching and fearless moral inventory of ourselves.
5. Admitted to Linus, to ourselves and to another human being the exact nature of our wrongs.
6. We’re entirely ready to have Linus remove all these defects of character.
7. Humbly asked Him to remove our shortcomings.
8. Made a list of all persons we had harmed, and became willing to make amends to them all.
9. Made direct amends to such people wherever possible, except when to do so would injure them or others.
10. Continued to take personal inventory and when we were wrong promptly admitted it.
11. Sought through bash scripting and kernel troubleshooting to improve our conscious contact with Linus as we understood Him, praying only for knowledge of His will for us and the power to carry that out.
12. Having had a spiritual awakening as the result of these steps, we tried to carry this message to Windows users and to practice these principles in all our affairs.4 -
Oh boy. 2.5k loc of legacy bash code. The task is to give every function its own script since that is literally what this script is. Cha8ned together individual scripts . Fingers crossed its actually just breaking out functions :x
-
I have a pretty successful project on github
Which I don't think is necessarily my best achievement but all the stuff I do at work is not open
I used the project as a way to learn bash scripting and it kinda caught on.
Sadly I'm not a sys admin or anything I'm more of hardware/embedded engineer but it's still cool to have one of my projects being so used. And I got to learn a little of bash along the way 😁 I now feel super comfortable in a terminal and reading man pages to figure things our which was a skill i lacked previously. I definitely learn better by doing and fixing mistakes along the way -
First day of job. Im doing jack shit. They just make me watch udemy courses of Azure and linux shell and bash scripting all for devops purposes so they can pay a microsoft certificate for me to pass and get certified and they pay for udemy courses. Im basically getting paid to watch courses on the job10
-
Why people uses Python for OS scripting? What’s the point in forcing me to download a proper interpreter to run a script when the same result can be achieved with a more portable and cleaner Bash/PowerShell script?!?!24
-
I wasted fucking hours just trying to find out why curl doesn't send the data I've interpolated from a variable.
It doesn't even send the fucking hardcoded part of the data. I've compared it with a curl command generated by firefox, which works fine. Literally the only difference is that I interpolate a variable and I've echoed the contents of that variable and that was fine as well. I've even checked the interpolated string and it was fine.
And then I moved more stuff into the hardcoded part and it just started to work.
Wtf is this bullshit. I really feel like learning intermediate bash scripting is just a waste of time, just how complicated can you make debugging something so simple.
Every fucking time I give bash scripting a chance this shit costs me so much time, patience and motivation, I really wanna prefer that shit to python, because managing python dependencies for a script sucks ass^2,, but at least I can get shit done in Python. Just fucking end me or give me a language that doesn't make me wanna shoot myself5 -
Junior Software Developer Job( $37k-$42k USD)
-1 year experience
- J2EE, Javascript, HTML, XML, SQL
- object oriented design and implementation
- management of relational and non-relational such as Oracle, PostGreSQL and Cassandra
- Lifecycle and Agile methods
- Familiarity with the Eclipse development environment and with tools such as Hibernate, JMS, ,TomCat/Gemini/Jetty, OSGi.
• UNIX skills, including Bash or other scripting language
• Experience installing and configuring software packages
• ActiveMQ troubleshooting/knowledge
• Experience in scientific data processing and analytical science in general
• Automated testing tools and procedures, including JUnit testing, Selenium, etc.
• Experience in interfacing with scientific instrumentation, potentially over IP networks
• Familiarity with modern web development, user interface and other ever-evolving front-end
technologies, such as React, TypeScript, Material, Jest, etc.
I am betting they don't get many people applying.8 -
Got anymore runtime exception handlers with that?
When a paid service that promises a million connection types can't even do an initial sync 🤦♂️. Back to bash scripting it is... -
Why have I never touched bash scripting before?!
Using it to create an easier .NET Core build command thing for myself because I really don't like the default command syntax, been using it for 5 minutes and already in love with it...1 -
hey, y'all android users listen up. i wanna start a new project but im not sure if it's gonna be useful. essentially, i want to make a scripting language to program people's phone, so devs or android super users can make the most of their phone. users will be able to create, share, and schedule execution of the scripts all from the app. is it a good idea? is their something like it?
example of a use i personally would have: there is a set date for when the soccer league schedule for the youth league i play in is supposed to be released online. however, the set date is never met, and it is usually a few days late. in this case, i could make a script to request to the website with the schedule and see if the html changed from last time, and if so it would send me a notif saying "check for schedule" or something similar.
then, i could schedule it to run every five minutes, and i wouldnt have to check manually.
its essentially bash automation for your phone.
good idea?7 -
Best
typescript - I needed to learn it for a project and I like it, I know java and javascript and it is something in between of those two that makes writing enterprise web applications easier, it’s nice that you can debug it directly in chrome, it makes things easier
Worst
docker, Dockerfiles - devops tools - amount of shell commands inside them and mangled && to make everything running in one file layer makes those unreadable mess that you need to think twice to understand, there is no debugger for it, you do everything with try and see what happens, there is actually no real dev toolset for devops and that sucks, since you got builder images that makes things more mangled than before, it’s clearly missing some external officially approved scripting language or at least
FUNCTION and
WITH LAYER and indentation / parentheses syntax and they still trying to make it flat, why are you doing that ?
as a result next to Dockerfile cause you can’t import multiple ones you get bunch bash scripts with mangled syntax and other crap that is glued together to make a monster - and this runs most of current software on this planet2 -
Due to sad circumstances at my current company, I had to work with bash scripting exclusively.
At least I found joy even in this situation and now I'm satisfied with my bash TDD practices...
¯\_(ツ)_/¯ -
My Linkedin feed is bombarded with .NET and C++ jobs.
I don't like C# and don't know C++.
I understand the demand for C++ but not .NET.
Every time I use C# or Powershell I feel weird and handicapped by Microstuff's prison.
Java, Python,Node.js and bash scripting feel so much better. Why there is such a demand for .NET devs?7 -
emacs, git and a decent shell like bash with at least gnutools
emacs, because I was searching for the right editor for years
- multi-platform
- extensible
- ready to type (no fucking mode change for typing like vim)
- programming functions like auto indenting, syntax highlight, auto complete, etc.)
- multiple windows in any arrangement
Additionally
- it is completely programmable to do anything you want
- you can find a solution to most common development needs on the web
git, because
- it is usable from small personal projects to heavy duty development
- fast branching and checking out, switching between different workpaths within seconds
- basic version control offline, you only need to be online for remote consolidation
- you don't have to think much about structure from the beginning, if in doubt just commit and your work is saved, then arrange the result when you're ready
sh/bash-like shell with gnutools, because
- simple tools do their job and try not to be smarter than the user
- tools can be combined in any possible and impossible variants
- powerfull scripting (although sh-syntax is often annyoing)
- open as many shells as needed, no single-instance problem as with some GUI-tools
- extensible with gazillions of other tools
And best of all, all these tools are available on all widely used desktop OS. -
okay. Just had an interview for a web application engineer role. It was a catastrophe. Basically, they are taking care only of things I was never worked with, like certification management, ansible deployments, bash scripting. ?? What? Like, what the hell? Guys, I can make you a nice javascript game, or laravel website, eventually mount the routers and switches, configure and automate the networks, but certs... for me ssl is just an extra checkbox when I'm buying a new domain. I asked the recruiter like 5 times, please tell me what the hell is the role about, he doesn't knew... I think, I'll just give up this applying for a jobs stuff, and stay maintenance engineer, dig into plc-s and etherCat even more and forget the IT career completely...7
-
Couldn't be arsed with all the conditional compilation that angelscript required, so I dumped right back to good ol' lua for now.
Got lua in, vm started, loading strings and pushing/popping the stack.
Got SDL actually drawing as intended.
I don't know even half of what I'm doing.
Apparently header files that end in ".hpp" are specific to c++, while .h are for c headers.
I like the new SDL2 though, little bit different than SDL1. Not a lot of tutorials cover the difference, but I could kinda suss out from the documentation where I needed to adapt, even though I'm still pretty loose on the library, on the docs, and on c++ itself.
Still just a learning project.
Also, I'm continually surprised there isn't a portable, platform independent tool or little language just for replacing all pseudo-languages out there like .bat and .sh, and .zsh
Maybe even just a tool that standardizes it all, then takes config files that map the new standard to system dependant commands, so you can download the damn thing, configure the relevant environment variables, drop in the platform dependent configuration (or your browser or package tool detects what platform you are on and chooses the relevant package/download for your platform), write a console script and the tool automatically translates, and emits the system-relevant commands to that platform's console (so you don't even need much platform-specific code to do things like file access). -
I decided to try shell scripting by making myself a nice configurable menu using dmenu that I can add commands to and that isn't cluttered with desktop entries. Worked suprisingly well tbh4
-
Should I force myself to complete any kind of book/training/education to full?
I realized, I like to learn "new" things but I realized I do not complete material to 100% after I feel like I got to gist of it.
I started Bash Scripting book by Richard Blue but stopped at 20%, started 20 hour matlab training(free), stopped at 40% as well. Now I set my eyes on GoLang but I am sure I will not complete the material also.
Naval Ravikant says he is skipping most of the books and OK with having general idea of the books. But at some point, I feel like I should complete the chosen material, what do I know?5 -
The worst project I worked on so far was a bash script of over 2000 lines written by two different people who both script differently. I was supposed to understand the script and "fix a few things".
Names of functions were as confusing as possible.
Up to this day I'm still forced to use it.3 -
Actually any Hackathon where I'm trying to build or implement something that I (at least at the start of the Hackathon) Have no idea on how to build
Where I spend maybe half (or more) of the Hackathon on rapid prototyping and learning asap to be done in time
I get such a motivational rush that one time I even managed to stay up and productive for roughly 42 hours straight
And the knowledge that I got during that Hackathon (bash scripting) got me into server management, I even use some of my scripts daily.. so last year was a huge payoff for me 😇
Actually pretty funny that this is the question of the week, because this week I am going to a yearly Hackathon -
I cant believe i have to know bash scripting as a devops engineer! Like not linux terminal bash commands, the literal bash Fucking language and syntax coding of automated scripts! Why the fuck? Why cant i just code this shit in java or any other normal language? It would do the same fuckin job and much easier to do. Why i have to code .sh files in devops?!15
-
Dumb question time!
I'm writing a bash script that outputs some progress info to stdout (stuff like "Doing this... ok", "Doing that... ok") before outputing a list of names (to stdout too).
I'd like to be able to pipe this list of names to a second script for processing, by doing a simple :
~$ script1 | script2
Unfortunately, as you may have guessed, the progress info is piped as well, and is not displayed on the screen.
Is it considered a bad practice to redirect that progress info to stderr so it is not sent into the pipe ?
Is there any "design pattern" for this kind of usecase, where you want to be able to choose what to display and what to pipe to a program that accepts input from stdin ?16 -
Tomorrow i have to go into the office and work for 8 hours for $0/hour, building a project that includes backend in java, bash scripting, ci/cd and building the whole devops infrastructure and deploying that backend on cloud provider through terraform docker kubernetes, aside from being tested in theory for those 8 hours in-person,
all of this as a form of 1 technical interview after which they will decide if they move forward with me or reject me.
Do you think this is fair?9 -
So, I have a pretty decent understanding of big complete languages like Java, I build android applications following several design patterns, solid principles, building big stuff with databases and servers and libraries interconnected with gradle, tracking everything with git, using tdd and functional programming capabilities blablabla ... And I still have trouble making sense of a FREAKING STUPID SHELL SCRIPT I MEAN WHO CAME UP WITH THAT SINTAX I HATE IT SO MUCH OMG I CAN'T EVEN
But for real everytime I need to read a '.sh' I literally wanna throw my computer away and die. Am I alone? -
!rant
Hello everyone
Do any of you python programmers have any tips for simple projects you can do to learn python?
I am mainly a backend/system engineer comig from C++, slowly picking up rust and have been using bash as my scripting language so far. bash is nice because it is so fundamental in the linux world but you just dont get very far with it and its usually not pleasant to write.
So I would like to learn python, though I have no idea what I can do to practice it, so that I can just quickly whip up a script the next time I need something done in the file system or want to write a simple parser for something.
Do you guys have an idea of something small (not necessarily useful) which makes use of pythons strengths? Just looking for ideas here, so stick it all out 👋💕11 -
Rant
So, after a week seminar at my university on "practical introduction to operating systems" and bash scripts all we did till now is 'echo' and 'mv'.... why did I sign Up for this....2 -
I wasn’t able to run a bash script right now using ./script.sh as I was getting an error “Command not found.” I tried running it using source command instead of ./ and it worked! What’s going on here?9
-
Am a Computer Science student. And learned C, C++ and Java. And right now learning C# through online tutorials and practicing side by side.
So my question is, should I learn bash shell or not? Is it worth learning it? Or should I learn powershell scripting? Or should I don't learn either of them.6 -
Another hours wasted on debugging, on what I hate most about programming: strings!
Don't get me started on C-strings, this abomination from hell. Inefficient, error prone. Memory corruption through off by one errors, BSOD by out of bound access, seen it all. No, it's strings in general. Just untyped junk of data, undocumented formats. Everything has to be parsed back and forth. And this is not limited to our stupid stupid code base, as I read about the security issues of using innerHTML or having to fight CMake again.
So back to the issue this rant is about. CMake like other scripting languages as bash have their peculiarities when dealing with the enemy (i.e. strings), e.g. all the escaping. The thing I fought against was getting CMake's fixup_bundle work on macOS. It was a bit pesky to debug. But in the end it turned out that my file path had one "//" instead of an "/" and the path comparison just did a string comparison without path normalization.
Stop giving us enough string to hang ourselves!rant debugging shit scripts of death fuck file paths fuck macos string to hang ourselves fuck strings cmake hell12 -
Thanks god bash scripting exists.
Saved my time from running manually a C program with input files to check the output that would take me at least 1H. -
Dear C++ / Java developers.
Please do not write Python, or do utilize helper libraries / pythonisms.
Not EVERYTHING has to be done by hand, it's not CS class anymore. Classes are fine too, not everything has to be passed as comma separated string. Python is proper Object-Oriented language, not scripting tool like Bash.4