Live data from Hacker News

Ask HN: How did you automate your day job?

news.ycombinator.com

11–20 of 51 posts

Re: Ask HN: How did you automate your day job?

#11
I was a VMware admin primarily for years in engineering shops and everywhere I worked constantly had issues with resource allocation, which team had the most resources deployed, who had the most idle vCPU and memory running...

At one company pretty much my sole job for 2 days a week was to look over utilization by team, shutdown idle VM's and check for any that were provisioned with too many resources. I'd have to e-mail the team, power them down and resize the resources and boot it back up, etc.

I automated all that with scripts, from the team e-mails with a nice HTML table report of the pending changes to actually running the operations to resize and power off the machines. I was pretty proud of all that work.

Re: Ask HN: How did you automate your day job?

#12
post #9

I once took a temp job to get some quick spare cash after a failed startup attempt that wiped out my savings, when I still wanted a bit more time before getting another coding job. I ended up helping with some general office work in a mortgage bank, in a department where some accountants would look at all the applications that fell in the grey areas where it wasn't automatically accepted or rejected. They entered the…

Was there a job offer / spot bonus?

Yep. I got a job offer. It was nowhere near competitive with other opportunities, though, so the talks didn't go far.

Re: Ask HN: How did you automate your day job?

#16
I actually got my first dev job by doing exactly that. While I was searching for a new career and vaguely interested in something to do with IT, I was doing short-term temp work as an office admin. One was in a startup - not tech-related - where I spent most of my day searching for customers' names and addresses in a spreadsheet, then copy-pasting them into a bunch of Word templates and printing them out. I already knew about mail merge, but in this job the particular set of docs to be generated would be different according to the specific circumstances of each individual case, along with one or two customer-specific paragraphs that came in an email and had to be pasted into the document.

Having been a hobby programmer as a teenager, I had a hunch this could be made more efficient. Once I discovered VBA (what? Excel has its very own programming language BUILT IN?!) I quickly threw together some macros and an Excel form that generated the whole personalised document set in a few clicks (what? you can write code in Excel to control Word? This is AWESOME!)

At the time I was sharing a house with a couple of CS students and one of them let me borrow a very academic textbook about this wacky thing called SQL. I fell in love with the idea of tables and joins and stored procs, skipped over all the difficult maths parts, and discovered back at work that the funny icon next to Word and Excel called "Access" was actually a SQL database. Feeling like I had all the power of the universe at my fingertips, I hacked together a custom CRM system which pretty soon the whole office was using, and pretty soon it started grinding to a halt.

Round about then the company hired its first IT Manager, he liked what I had done and said: maybe you should check out this new thing called SQL Server 2000, do you want to be our Database Developer? So I shifted the back end over to SQL then discovered .NET 1.1 and started writing better front ends and hired a small team to take it over.

So yeah, I kind of fell into business app development by accident just by automating my very repetitive office admin job. That was 15 years ago, and I'm still getting paid to automate other people's 9 to 5 jobs.

Re: Ask HN: How did you automate your day job?

#17

I became a manager and delegated everything.

Did you delegate managing too?

Yes, but let me elaborate.

I quickly learned the way to get promoted is to be replaceable.

If you’re relied upon too much or if you’re the guy who always fixes things - it’s actually too risky for a business to promote you.

Throughout my career I always made sure I was giving people below me the opportunity to step up, which allowed me to step up too.

I quickly appointed team leaders as soon as a team I managed had more than 4 people for example.

I had to manage the team leaders but they had a lot of freedom.

Some days I had so little to do you wouldn’t believe it, but the department was running the best it had in years and everyone was happy.

Re: Ask HN: How did you automate your day job?

#18
Not a day job, but while looking for a day job, I came across a process, where a state run department has multiple openings; you upload your resume things like name, details, previous jobs, address etc to a standardized form, & then at job search page, just click the listing, review the text, click Apply, attach your standardized auto generated resume by click of a button, agree to their t&c with a checkbox, & click Apply, & note down the information from thank you page about job number, city, position, department, type etc. All of these 6-7 pages had unique URL, & all html was nicely generated with proper css id class names etc.

After spending about 5 Sundays doing this manually, I quickly wrote a JavaScript bookmarklet where it gets the current URL, & switch case calls the required function. Each page had different function to look for element, focus, highlight for me, & click it. The last page all required information was loaded & sent to a Google script for spreadsheet.

Re: Ask HN: How did you automate your day job?

#19
post #7

I deal quite a lot with JIRA at my job, as this is a corporate tool. Often, I get questions about the content of these JIRA issues, by issue key: either orally ("hey, what about PRJ-12345 ?"), or in plain text format in email, i.e. "PRJ-12345" _without_ the hyperlink of course. That could result in going to a https://jira.domain.tld/browse/PRJ-12345 , or even https://anotherjira.domain.tld/browse/QSK-54321 (yes we ha…

Your method will be faster, but fyi, you can also put the issue key in the search and it will go directly to the issue. We typically configure search shortcuts in the browser so if you type jABC-123 it will auto expand the j to https://somejira.tld/browse/ABC-123

Re: Ask HN: How did you automate your day job?

#20
My first job was doing restock for a small independent retailer. The only report we could print showing inventory was inclusive of all the items we had ever carried, regardless of current status. The software was very limited and there was not much in the way of filtering. The best you could do was break the report up into ranges by vendor.

So my job was to go through the alphabet printing reports (e.g. "every item from a vendor that starts with 'A'"). I'd take this report, which for some letters was over a hundred pages long (about 20 items per page) then, using a highlighter and a ballpoint pen I'd go through the report highlighting the items that had stock available in the "backstock" column and had stock in the "sales floor" column that was lesser than the "restock level". I also had to compute the restock amount by subtracting the items on the floor from the restock level and taking the max of that number or the available backstock. I'd write this number in the margin of the report, then I'd travel to the backstock area, pick the highlighted items, and restock them onto the sales floor. After this was done I'd move on to the next letter. The goal was to cycle through the alphabet at least once a week and during the off-peak season this worked fine, but during the busy season, even with extra help, this system was showing signs of stress.

The first thing I did was to write a small perl script which I placed at the path the POS software was expecting to find a line printer. My script took the print-formatted report as input and simply stripped out the lines with no available backstock before forwarding the remaining lines to the printer. This alone reduced the number of pages printed out by an order of magnitude in most cases (from ~100 pages to ~10). At first I would copy this script to the printer path, run the report, then re-link the printer, but later I modified the script to recognize that specific report and pass-through other print jobs unmolested.

Over the next three years or so I added onto the script a lot. First I made it compute the restock amount for me, then I had it start skipping lines where the restock was trivial (e.g. restock amount was 1 and there were still >10 on the floor). Eventually the script was maintaining its own parallel inventory database, tracking rate of sale for each item and only suggesting restock for things that had very low inventory on the floor or were selling very quickly. I got to the point where I could restock the entire alphabet every morning and have time leftover in the afternoons to help with receiving. By the time I left I had a dedicated terminal set up in the back during the busy season that ran my scripts every 10 minutes and displayed in near real-time items that required critical restock throughout the day.

I heard a few years after I left they had switched back to the old methodology because they couldn't get their POS vendor to support my setup.

Post reply on HN