3 ms·
Some of my very first consulting gigs were around access and excel automation with VBA. They paid well for being a 19-year-old kid still living with mom and dad
by jermaustin1 7y ago
Some of my very first consulting gigs were around access and excel automation with VBA. They paid well for being a 19-year-old kid still living with mom and dad.
Now most of my consulting now is:
- Bringing web-apps up to date (mainly by getting rid of a lot of jQuery that could just be JavaScript, or shockingly common could just be CSS)
- Refactoring hard/impossible to understand 2000+ line methods (least favorite - so risky)
- And cleaning up the dead-code and inaccurate comments that accumulate over the years from the ghosts of contractors past.
I'm basically a janitor for "enterprise" software code-bases.
- Ididntdothis 7y agoI always found excel and access coding much more rewarding than working on web apps. Problem is that the money is in web apps....
- gitgud 7y ago> Refactoring hard/impossible to understand 2000+ line methods (least favorite - so risky) Maybe I'm just weird, but for me that's one of the most satisfying things to do. Like reaching a big boss in a video game and having to slice pieces off him until he's no longer a problem.
- tonyarkles 7y ago> Maybe I'm just weird, but for me that's one of the most satisfying things to do. I'm with you, but also agree with the GP. It's super satisfying to get stuff like that cleaned up, but one of the most shocking things I've come across is callers who do absolutely bizarre things that rely on side effects from those methods. More than once, refactoring a big method like that has spiraled out of control fixing all of the callers as well.
- pronouncedjerry 7y agoI'm surprised businesses would pay for this. Usually they operate under the "if it ain't broke it, don't fix it" model. How do you position/market your services?
- jermaustin1 7y ago>How do you position/market your services? I don't really market myself other than through networking. I try to keep up with everyone I've ever worked with. Especially if they manage tons of contractors without any real web development experience. The more of these "enterprise contractors" you have touching a project, the more value a person like me can add in cleaning everything back up. > "if it ain't broke it, don't fix it" This is true, and they only come to me when it is broke. For instance - today I was fixing a bug for a client that has gone through ~20 contractors in the last 4 years. They had a view that was now displaying incorrectly. They were using a single table broken up by empty rows with no side borders to look like a space between tables, instead of using multiple tables with margin between them. Then they used jQuery to color the background of the odd rows. Doing a git blame showed dozens of hands on this view, and looking at the history, some very creative ways to color the background (all using jQuery). Now that "table 1" had a new row added to it, there was a blue space (instead of white) between the two "tables". It took me about 45 minutes to break the table apart properly, get the various attributes back in working order and remove the 10 lines of jQuery they were using to add various styles based on even/odd/first/last rows, and replace them with approximately the same number of lines of CSS, and another 30 minutes to replace the dozens of references to the same jQuery selector of the main table, with a single reference of the element returned from document.querySelector, another hour to fix the duplicate ID attributes scattered throughout the view which led to some JavaScript issues that then took another hour to resolve. I do a lot of this. I'm hired to to quickly fix one problem, but while fixing it, I compile a list of dozens-hundreds of other ticking-time-bombs, and estimate about how long it would take to address them all. Easily turn a $500-1000 fix into $5-10k minimal extra work.
- avgDev 7y agoThis makes me feel not alone. I am rewriting an enterprise app. I had to work with outdated source code and decompiled production code. Many methods 1500+ lines, data access, printing and all validation. As a BONUS, the variable names are textbox1, textbox2 and field1.