Cornbread and Contracting

 

 

 

Cornbread and contracting. They have a lot in common. What do I mean?

 

Well, you never go in empty handed. That's for starters. How did this come up? I'm headed to my favorite bike and coffee shop this morning to do some fancy computin'. I'll be sure to bring something with me to the show. Whats my fav? Cornbread!

 

I looked in my cupboard to see what I got. I got some cornmeal. Yeah! I got some baking power. Bingo. Salt. Check. Eggs? Yup. Milk/Soy milk? Uh huh. What else? Well, I got some notes. Lessee.

Cornbread and Contracting 

My trusty cornbread box has a faithful recipe. I don't commit it to memory because I forget a lot. But, I try. So, that was it. What did I forget. Flour. Uh oh....

 

What am I gonna do? Substitute. So, I turn on the oven to pre-heat because time is an issue. Time. Yes, time is something I think about all day long. Every day. No days off. Not until I'm done. Even then, I'm thinking about the next project. In this case, it's a decision to go to the bike shop and do some work (read: visit). It takes time to go there. I have to pack up my stuff, which includes the laptop and whatever else I won't have when I'm there. Like going onsite, yes?

 

Time is an issue. So are expenses. It costs me to drive there. I use up gas. I use up an element hard to capture. Call it wear and tear. On my car. On me, because I have to take my mind off my project to focus on the road. And, there are risks in this diversion. I may have an accident. I may get a traffic ticket. I may break down. But, I have AAA! Insurance. American Automobile Association. Right.

 

Back to cornbread. What'd I forget? Flour. This is where experience comes in. I've made cornbread before. And, I have a recipe. So, I know how it's supposed to be done, fundamentally. Well, I could run to the store and get some flour. More time spent. More money. More risk. Forget that. I have something just as good. 7-grain breakfast cereal. Will it work?

 

It's a numbers game. I don't want to go to the show, I mean the bike shop, empty handed. But, I also weigh the relative importance of all this. Is it gonna kill me if I screw up the cornbread? What are the chances? I call that "P sub s"; probability of success. So, I weigh the odds and toss in that seven grain stuff and pop it all in the oven. I give myself time to write this article. 20-25 minutes to cook. Then, shower, let it cool at the same time, yes, time sharing.

 

You see, I am a contractor. I work on a project to project basis. I get paid for what I know. I have some experience and tools. I have my judgement. And, I know one thing more than anything: time is an issue. And, time is not on my side. Unless I make it that way. I try to get more than one thing going at a time. That doesn't mean thinking about a lot of stuff at once, because that doesn't work for me. But, I can get some parallel processes in place. Notice that bowl of oatmeal on the counter next to the mixing bowl? That's breakfast, Homefry! Gotta stay healthy.

 

I am not paid as a contractor to get an education. That is a side effect. I bring my experience to the table. I am not paid as a contractor to get a pep talk. I take care of that myself. Do I need some OTJ training? I think not. Tell me what I need to do and show me how it works, maybe give me a workflow and I will figure the rest out myself. I'll talk to everyone. I'll keep good notes. I'll make damn sure I understand what you're saying. And, I won't worry about looking stupid when I ask questions because I am going to get the job done and be out of here before you know it!

 

Is there a middle ground? You bet. Do you want a nurturing environment where you get training, vacations, sick leave and parties thrown and still get to go out and do job work? Take a employee position with a contracting firm. Notice I haven't used the word "consulting" yet. That's a whole 'nother thing. But, you can work your way into contracting. The pay won't be as good. But, you'll be an honest bloke. You'll get that hand holding you need. You'll get paid bench time. See how long that "perm position" as an employee lasts on the bench. You'll learn it's all just different billing situations with compensation adjusted according to how much hand holding you want. You'll have your very own cubicle to come home to and play Angry Birds. Always remember who's throwing the party. And, at some point, you'll ask yourself: "What do I want? Would I rather be invited to the party or throw it myself!"

 

There's another middle ground. It's called the boutique consulting firm. Not that everyone's a consultant. But, you don't have to go it alone. The magic sometimes happens when you find a company that does job work, not a "body shop" mind you, but a group of reputable people who know what they're doing and do project work. Because you might not want to be the Lone Ranger. Economies of scale, you know? One legal, one accounting, one marketing and sales, a few principles, a few good people. There are those. You'll rarely see ads from them looking for help. They know their guild. When the time's right, if you're lucky and looking, you may get the nod and wind up in that dreamlike situation where the line between work and play is blurred, and you're getting paid for it.

 

Now, I talked about risks. We work in a dynamic field. People are constantly writing tools and components that are the magic wand. They automate repetitive tasks. Remember that? Yeah, that's computing. But, remember the SDLC? Software Development Lifecycle is what SDLC stands for. In case you never heard that acronym. And, remember workflow. Two important concepts. So, SDLC means analysis/design, coding, testing, deployment, fixing, iteration and maintenance. More or less. And, workflow is that process that we plug all of this stuff into combined with our concept of "P sub s" giving us the highest probability it's all gonna work. Different tools and components have different levels of maturity. Some are tested and work better than others. So, you gotta factor that in. I mean, just because they say it works, doesn't guarantee it's gonna work for you.

 

Now, that cornbread timer just went off. Here's what I'm left with! Is it right? I don't know, but I'm gonna stick a fork in it and see if it's done.

 Cornbread

What do you notice about this photo of me and the cornbread? What am I talking about here: me or the cornbread? And, what's standing out bigger than life in the photo? Me. Wrong. Cut the "me" out of your freelancing equation. You go home with you. You leave your project and all the glory behind. Leave the glory to the people who hired you. So, it's about the work. It's about the project. The cornbread is the result of my work. So, I'm gonna crop that photo and show you what it's really all about.

 



Now, see! It's OK, in general. It may need a little cooking because I used some ingredients I've never used before. But, I can fix that. Why? Because it's not the first time I've done this.

 

Imagine this: imagine I had this grand plan and I was going to go to the bike shop, not empty handed. Imagine I grabbed the best guy or gal I could find at the time, because that's all that matters. Time. Remember? That's crucial. I'm only as good as what I can do right now.

 

Now, imagine I decided that, with all my vast experience making cornbread, I was gonna do something else while my "podnuh(s) in crime" made that cornbread. I handed them the box with the ingredients on it. I told them the plan. I said, "Go for it". And, I checked back with them regularly to see what's up. Uh, oh. There was something missing! Flour. Now, how the heck you gonna make cornbread without flour? That's a biggie. Tick-tock. Time's a ticking.

 

There are some decisions being made there. The project (cornbread) depends on everything working together. Risk vs return. P sub s. Substitution of ingredients that haven't been tested yet. The recipe says 20-25 minutes at 400F, but we're using 7 grain cereal. Will that take longer? Who knows. So, we go for it. We check out our result. We keep in touch regularly. We let each other know what's up. We adjust the timeline to account for the unknown. Then, TIME's UP! So, we stick a fork in it. Done. Happy? We'll see. Stay tuned...

 

 

 

 

 

Views: 81

Happy 10th year, JCertif!

Notes

Welcome to Codetown!

Codetown is a social network. It's got blogs, forums, groups, personal pages and more! You might think of Codetown as a funky camper van with lots of compartments for your stuff and a great multimedia system, too! Best of all, Codetown has room for all of your friends.

When you create a profile for yourself you get a personal page automatically. That's where you can be creative and do your own thing. People who want to get to know you will click on your name or picture and…
Continue

Created by Michael Levin Dec 18, 2008 at 6:56pm. Last updated by Michael Levin May 4, 2018.

Looking for Jobs or Staff?

Check out the Codetown Jobs group.

 

Enjoy the site? Support Codetown with your donation.



InfoQ Reading List

Cloudflare Processes 10M+ Daily Insights with New Security Overview Dashboard

Cloudflare has launched a Security Overview dashboard that consolidates security signals into prioritized action items. It surfaces millions of daily insights, helping teams identify and remediate critical risks faster. Built on distributed checkers and real-time event processing, it integrates analytics workflows to reduce investigation overhead and improve response efficiency.

By Leela Kumili

Presentation: The Human Scalability Problem: Why Your Teams Don’t Scale Like Your Code

Charlotte de Jong Schouwenburg discusses the "human bottlenecks" of hyper-growth. While systems scale, human cooperation often breaks down due to communication overload and lost context. She shares proven tools for behavioral scalability - including communication architecture and "engineering trust" - to help leaders maintain high-performing, autonomous teams without sacrificing speed or culture.

By Charlotte de Jong Schouwenburg

Article: From Batch to Micro-Batch Streaming: Lessons Learned the Hard Way in a Delta Index Pipeline

This article describes how a production delta-index pipeline migrated from scheduled batch to micro-batch Spark Structured Streaming. It covers why record-level streaming was rejected, how partition-based watermarks replaced fragile S3 completion markers, overlap-window correctness, and restart-as-design strategies for better predictability in object-store–based ingestion systems.

By Parveen Saini

Podcast: Roq: Leveraging Quarkus to Build Static Sites at the Speed of Go

Andy Damevin, a developer who worked on Quarkus for almost a decade, talks about Roq. A project that started as an experiment to try to see if it’s possible to build a static web site generator on top of quarkus. He touches on the rationale for choosing Java and Quarkus, how to migrate to Roq, and the platform's future.

By Andy Damevin

DoorDash Used Copilot to Convert Its XCTest-Based iOS Test Suite to Swift Testing

Using Copilot along with strong reliability safeguards, DoorDash migrated their iOS XCTest-based test suite to Swift Testing, thus modernizing a large test suite quickly, safely, and with measurable performance gains, says DoorDash engineer Matheus Gois.

By Sergio De Simone