Oh, thoughts, you know

https://georgemauer.net/ (RSS)
visit blog
A Heck of a Wild Bug Chase
1 Aug 2024 | original ↗

I just tracked down a bug with more twists, turns, and interconnecting weirdness than I’ve seen in years - maybe ever. I feel like I’m going to be telling the story of Olympic-level Bug-Chase-2024 for years, and I feel compelled to write about it. To be clear, the following is a streamlined retelling. I’m omitting the twists, turns and dead-ends...

Get That Coding Job
22 Jul 2023 | original ↗

Preface So far during my career, I’ve designed software developer hiring processes at three different companies. I’ve personally conducted a couple hundred interviews, I’ve run teams that have conducted thousands, I’ve written staffing software, and I’ve spoken on hiring at conferences. I have also mentored people for fifteen years, am involved...

Job Hunt 2022 Retrospective
20 Nov 2022 | original ↗

.split-aside { border: 1px solid gray; padding: 0.7rem; margin: 0.7em; margin-left: 0; } @media (min-width: 1024px) { .split-aside { float: right; width: 50%; } } I recently took an offer as a Director of Engineering with BlocPower where I will be working on creating the Building Data Collective. I am writing up my job search...

What is Dependency Injection?
31 Jan 2020 | original ↗

Recently I was asked in the Operation Code Slack to help someone understand dependency injection. What follows is my answer - as always, editted for clarity and to make me seem like a better writer. This is also in the context of javascript, though the concepts apply regardless. So what is Dependency Injection? This is one of those terms that...

TDD With No More Tears
2 Dec 2019 | original ↗

.posts .tdd-with-no-more-tears img, .entry img, .entry figure { margin: 20px; display: flex; flex-direction: column; justify-content: center; align-items: center; } .entry figure img { margin: 0; } .entry .tdd-terms { border: 1px solid gray; display: inline-flex; margin: 0 auto; padding: 10px...

Understanding Domino's v Robles
4 Nov 2019 | original ↗

.posts .understanding-domino-s-v-robles img, .entry img, .entry figure { margin: 20px; display: flex; justify-content: center; } .entry figure img { margin: 0; } .entry .not-a-lawyer { position: absolute; opacity: 0.09; transform: rotate(-24deg) translate(-7em, 9em); font-family: monospace; ...

Announcing Tech Terms for Memorization
23 Sept 2018 | original ↗

TLDR; I created a project to help students in software development via memorization techniques. Project here List of terms here Flashcards here Read on for background! My academic career is that of an all right student. Perennially in the A- to B- range, good at understanding concepts, and able to cram just hard enough to do fine on tests....

The Problem With Repositories
5 Jun 2018 | original ↗

What follows is an edited down version of a chat conversation in the Operation Code slack. The context is that of someone studying up on .Net but, patterns being what they are, this applies elsewhere as well. The question was over explaining the repository pattern. I have strong opinions here and differentiate between how repository is defined,...

Take Home Programming Interviews Suck
3 Nov 2017 | original ↗

I don’t like take-home programming interviews. You know the type: Hey, here’s a spreadsheet of data. Create a simple web application that will display the data, allow searching and filtering of it using an api, and oh, I don’t know, how about it geolocates the address column to pop up a map when clicked on? Send us a stripped git repo! You’ve...

The Absurdly Underestimated Dangers of CSV Injection
7 Oct 2017 | original ↗

@media screen and (max-width: 480px) { #csv-injection-google-note { width: 10em !important; } h1 { word-wrap: break-word; } } I’ve been doing the local usergroup circuit with this lately and have been asked to write it up. In some ways this is old news, but in other ways…well, I think few realize how absolutely devastating and...

On `this` in Javascript
3 Aug 2017 | original ↗

Nobody listens to me. I’ve been saying for years that the constructor pattern, any use of the new keyword or function constructors in Javascript should be considered extremely advanced and not generally worth the rise in complexity in your code. I’ve been telling people about simple objects, and avoiding the this keyword. I’ve been trying to...

On Javascript vs C# and the importance of community
17 Apr 2017 | original ↗

I just got into a Javascript slapfight. It started with a Quora question. Which is the better Language, C# or Javascript? Because I’m sometimes a glutton for punishment, I chose to reply in depth Which is the better language? C#, I have no qualms about saying this. It’s not even a contest. Just examine their origins. C# was designed at Microsoft,...

Understanding the State of Javascript Modules
25 Nov 2016 | original ↗

aside { padding: 0.7em; border-radius: 1em; font-size: .8em; width: 30em; margin: 1em; text-align: justify; background-color: rgba(0,0,0,0.05); float: right; } *+h1 { clear: both; } If you’re new to the concept of Javascript modules you might be forgiven for thinking that nothing makes sense and the world is mad....

Why You Don't Get React
29 Oct 2016 | original ↗

My coworker and friend Emad Ibrahim blogged recently about how he doesn’t really get the hoopla around ReactJs. (Are pingbacks even a thing anymore btw? They were a great way of keeping track of multi-blog discussions.) This is the key paragraph React JS – for some reason I just f***ing hate it. I hate html in javascript. I hate JSX. I hate...

Predictions: XHTML
7 Aug 2016 | original ↗

article figure { display: flex; flex-direction: column; align-items: center; } article figcaption { font-size: .7em; text-align: center; } Recently I gave a talk at SQL Saturday Baton Rouge on the history of the Web. This was a version of a talk I had given many times before, largely to codecamp classrooms of novice...

CSS Only Tabs
15 Jul 2016 | original ↗

There is a tendency of web developers to prefer javascript over other tools of the trade. A lot of this is based in the need to support older browsers or - even more often - the percieved need to support old browsers. Just as often however, it is due to fear and ignorance of how the tools of the internet are meant to work. A great example is ui...

You don't need to learn map/reduce
14 Jul 2016 | original ↗

During an interview, a candidate - a smart guy just at the start of his career - asked me the following (paraphrased) I feel like the biggest hole in my understanding at this point is how applications work at scale. How does one put together a large application with millions of users and hundreds of thousands of data connections? How does one...

This can easily be the most important OSS thing I've done
14 Feb 2016 | original ↗

I’m putting together a workshop on estimation of large projects and features for the Operation Spark coding bootcamp and ended up mind mapping several dozen always-make-sure-to-discuss-this rules of thumb. I figure, why keep this private? I have plenty of experience but that’s still just me. Let’s open it up for public contribution. So here is a...

Why width 50% inline-blocks don't display side-by-side
18 Oct 2015 | original ↗

So here’s the thing that’s always confused me about display: inline-block. Let’s say you have two subsequent inline-block elements. If the container has no padding, and the elements have no margin or border, and if you set both those elements to width: 50% then they should appear side-by side, right? inline-block is not side-by-side I’ll assure...

Talk Roundup - Be the Es6iest
12 Sept 2015 | original ↗

The below is a talk I did about great features of javascript. Specifically of the es6 version of javascript that is starting to currently drop in browsers. The initial version of this talk was all about the es5 features that have been in javascript forever. I encourage you to read it, we’re still going to cover that stuff but we’re also going to...

Automated Testing Venn Diagram
27 Aug 2015 | original ↗

Gave a talk to our salespeople at Surge today about Automated Testing. Here is a Venn Diagram I created for the presentation on how the various philosophies in the space fit together.

Learn reduce
3 Jul 2015 | original ↗

So you’re a professional developer and you’ve heard of Array.prototype.reduce (or underscore/lodash’s _.reduce function), and you’ve heard that it’s an insanely powerful way of working with collections but you don’t quite get it. tsk tsk tsk1 That’s ok. I’m here to help. It’s a more advanced concept that can be difficult to learn. Or it can be...

Color Mixing Demo App
8 Jun 2015 | original ↗

A simple app to demonstrate color mixing with rgb values

Some self-indulgence from the nolatech chat
6 May 2015 | original ↗

Some self-indulgence form the nolatech chat room. (10:40:26 PM) avance: @joeellis_jk_its_joel: Is a "functional alcoholic" better than an object-oriented one? (10:42:14 PM) georgemauer: worse, a functional alcoholic is immutable, you can't get him to stay quiet (10:42:40 PM) avance: ha (10:43:29 PM) georgemauer: and if we're doing jokes on this,...

Why Not MsTest
1 May 2015 | original ↗

This has come up just so many times at this point. A discussion on unit testing frameworks comes up and someone invariably comes up with “Why not MSTest”? Well I’ve been down this road before. Back in late 2010 when I was at EPS we nearly had a rebellion when at first we were forced to use MSTest, then were allowed to switch, and then were asked...

Stop teaching h tags
20 Apr 2015 | original ↗

Look, I get it, you learned web programming a certain way and heck, that seems as good a way as any to teach others. You know your shit after all. I struggle with this myself. I learned coding Minesweeper on my TI-83 in the back of Mrs. Pappa’s pre-calc class and kinda think others could benefit from this too. But then again, it was the 90s, and...

node-gyp won't install on Windows
19 Feb 2015 | original ↗

So I’ve run into this error like a million times already and every time I have to look up this github issue. I’m on windows, I do an npm install eg npm install -g node-inspector and then, after what seemed like a success you get Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch. C:\Program...

Don't Teach Object Oriented Javascript
10 Nov 2014 | original ↗

On r/javascript recently someone asked if you would recommend using javascript with libraries. I responded with my logic for why I think you should, alon with some other opinions on teaching javascript. My position - use libraries. I consider jQuery (and to some degree Underscore/Lodash) to be akin to the standard libraries offered by other...

Use Simple Modules To Fix Up Your Ugly Brownfield App 1
31 Oct 2014 | original ↗

At Surge Consulting we have a mentoring program that I’m pretty proud of. In the course of this I get to review a lot of code and it’s not always…shall we say…good. With me prostelitizing javascript modules all the time, I frequently get asked for help adding RequireJs to existing codebases. This is not always easy. CommonJs-based systems like...

Talk Roundup - Be the Javascriptiest
2 Aug 2014 | original ↗

Be the Javascriptiest While there is some general philosophizing here, this is largely a step-by-step for building your own jquery collapsing widget. It is a writeup of my talk at Sql Saturday #324 - Baton Rouge. As such, it might seem lengthy and rambling. But the talk was over an hour so there you have it. You might be able to tell from the...

On this and new
29 Apr 2014 | original ↗

This is the pattern that a lot things recommend function Person(firstName, lastName) { this.firstName = firstName; this.lastName = lastName; this.name = function() { return this.firstName + " " + this.lastName;} this.printName = function() { console.log("my name is", this.name())} } var george = new...

Open IIS Express to the Network
9 Oct 2013 | original ↗

How many times have I run into this? A css error that is only happening on the tablet and me with no Browserstack account. Js errors I can handle and heck, I even know how to set up a pseudo remote-debugging environment to the tablet. But I still need to open up my webserver to off-machine requests and love it as I do, ngrok is not going to fit...

Setting Up RequireJs
26 Sept 2013 | original ↗

This talk is a write-up of a lightning talk I gave at BarcampNola 6. See here for a sample project demonstrating this techniqe. RequireJs is an awesome module loader that complies with the AMD standard and in most cases the CommonJs standard as well. For my money, a lot of the “structure” that frameworks like backbone.js provide can also come out...

Stop that = this'ing
29 Apr 2013 | original ↗

From our chatlogs at Surge (editted for berevity and to make me seem like a better debater/speller). GM: Can I just say, I hate that = this or self = this GM: Don’t anyone do that GM: The pattern is fine, but at least give it a meaningful name JA: Hmmm…..I’ll bite, devil’s advocate JA: Why not folow an established...

Error Handling and the Message Repackaging Anti-Pattern
16 Jan 2009 | original ↗

I currently have an interesting responsibility at work. I am functioning as the manager and single-point-of-contact for a team in India working on imporving the codebase for one of our more important ASP.Net sites. I know what you’re thinkin. Did I say interesting? I meant infuriating. At the very least I should get a good “Lessons Learned”...

QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture
12 May 2008 | original ↗

Microsoft Office on a Mac can’t save imagesQuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture I have run into this problem a few times and I figured I’d blog about it both to vent my frustration and to make a note for the next time this comes back to haunt me. So you get a shiny new Macintosh, you fire it up to...

↑ These items are from RSS. Visit the blog itself at https://georgemauer.net/ to find everything else and to appreciate author's digital home.