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...
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...
.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...
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...
.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...
.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; ...
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....
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,...
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...
@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...
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...
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,...
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....
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...
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...
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...
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...
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...
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...
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...
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.
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...
A simple app to demonstrate color mixing with rgb values
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,...
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...
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...
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...
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...
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...
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...
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...
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...
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...
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...
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”...
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...