Author: K. MacLeod

Freelancing is not for the faint of heart. And if you ever wanted a fast-track education in business and human behavior, become a freelancer.
There are a lot of free resources out there to help freelancers of all flavors, but there is one thing that they cannot do for you, and that’s cover. your. ass.

Last November I was referred to a new client and I was so excited! It was going to be my second paying job. So I drafted a proposal, chatted back and forth with the client and answered all their questions. I sent the proposal that I thought was clear about the cost, payment terms, and scope.

So here I am, four months later, trying to collect my final payment for project completion. Naturally, they want to dispute the final invoice. I had written this project to use their $1000 budget; not a large project, mind you. I presented it as value-based pricing (now I realize it was actually a fixed bid); but because I did not come straight out and say, “This entire thing is going to be $1000,” they assumed I was going to charge hourly. Unfortunately, since I was shy about talking about money, the terms did not come out as clear as I thought they were. And it didn’t raise a red flag to me when after I sent the proposal, the client asked about my hourly rate and how long it would take.

Now I am out a couple hundred dollars because of poor contract writing. No, actually, I did not have a contract at all. All I had was the project proposal. There were no signatures. It was basically, “The proposal looks good, board approves, lets do this!” And of course, being a complete noob, I was hung-ho. They found and exploited every last loophole that I left gaping in my proposal. The fact that I didn’t have a contract was a big enough loophole in and of itself.

I also declined a new contract this week. I met with a potential client, worked out a few ideas for their project and everything seemed dandy – they even agreed to meet in a public place! This client seemed to want to base the agreement off of a literal hand-shake. When I asked for an agreement or contract, and they seemed a little taken back. But they got it to me that Friday. I had just been burnt literally the same day from the other client, so I wanted someone to check it out for me. I couldn’t get it turned around with signatures until Monday because of the weekend. When I finally got it to them on Monday, they seemed upset that it took so long and further taken back that I had someone look at it. Granted, I should have told them I was going to get someone to look at it. But upon talking it over with my spouse, decided to decline the contract.

What have I learned this week (it’s only Wednesday)?

Be incredibly explicit talking about money*. I know it’s awkward, especially the first few times. It will leave an opening for people to try to dicker after the fact if you don’t.

If you’re doing the work, you should get paid. You have an obligation to yourself to make sure you are paid for your work.

Your proposal is not your contract!

If having a contract “scares off” a potential client, or they don’t want a contract, you are better off without them as your client.

You shouldn’t have to ask for a contract, it should be offered or you should have one ready.

If they don’t want someone else looking at the contract, you don’t want the contract (but let them know that’s what you’re doing in case there is a delay).

*Honestly, be incredibly explicit when talking about everything to avoid confusion as much as loopholes.

You are the only one looking out for you, so have your ducks in a row and don’t be scared of having a great contract that protects both parties!

I had my first UX/UI dev interview this week! I thought I’d just share a little about my experience.
The face-to-face interview consisted of brief introductions, some chit-chat, and mostly specifications for my take-home project. Nothing remarkable, but it was nice that this gentleman was thoughtful enough to work with my hours (I’m still a full-time employee elsewhere).
This take home project was two wireframes for a generic storefront – one a landing page and one a product page. He walked me though what things needed to look like and how they were to behave, especially on mobile. Everything was to be styled with Twitter Bootstrap 4, and there were to be no extra styles/stylesheets. I had four hours to do as much as I could, and to do my best work. There was more than four hours worth of work presented, and my interviewer said as much. I was also supposed to keep track of my time and what I worked on.

So, how do I think it went? Horribly. But that’s ok. Here are my thoughts on my performance.
First of all, I used Toggl to track my time. It’s nice and I like it, but for this exercise I could not stop seeing it as a count-down timer. Performance anxiety is real.
I chose to work on what was probably the harder page, in hindsight. It had four carousels on it, where as the other page only had one and text. Sonic facepalm.
While I am comfortable the Bootstrap, I am not proficient. This was a cool exercise to build a, oh, one-step-up-from-simple website using just BS. It can be done, but you have to know how to do it. It turns out, I don’t.
Also, I was told to do all my research on my own time, and to not track it. This kind of makes me nervous with this employer, since researching and troubleshooting solutions are about 95% of coding. I am hoping that this was just for this exercise.
Honestly, I probably spent 10 hours on this project, but only tracked 3 hours of coding and troubleshooting. Pretty sure I failed to satisfy the intent, but I got such a pitiful amount done that maybe I broke even. Oh by the way, it’s not done. At all.

But for all of that, I put myself out there for a job after just 8 months of teaching myself how to code. I was honest with myself and my interviewer about where I spent my time. Do I like the state of my project? Hell no. I’m embarrassed to turn it in as it is. But I am proud of what I have accomplished in 8 months.

This time last year, I was depressed because I hate my current job and I couldn’t see a way out. I cried every day because I felt like I was going nowhere in my life. Now here I am; not only is there a light at the end of that tunnel, but I’m close enough to feel a breeze. I also bought myself a Bootstrap 4 course on Udemy because, well… ;P

The only way I am able to function on any given day is by using reminders, calendar events, lists, and my hand-dandy notebook. I also have a large poster-board tacked up to my office wall with yearly goals and to-dos. Recently, I have been using Trello for some of my to-do lists, especially for team projects.

My heavy reliance on organizational tools is a product of my inherent absent-mindedness. I have left my lunch at home more as an adult than I ever did growing up. I tell my husband that I know where everything in the house is except my phone and my keys.

One of the reasons I love Trello is that I can drag-and-drop items from “Doing” to “Done”. I can’t explain why, but it is incredibly satisfying — more satisfying than checking off an item on my daily to-do list.

So, I can imagine what kind of skin-tingling, smug satisfaction gesture commands can bring as I organize my life, throw completed tasks away, enlarge how-to articles, and (sure, why not?) pay bills online with a flick of the wrist.

The only tech that doesn’t quite exist yet (at least for consumer use), and thus stands between me and a Tony Stark-level mastery of my day-to-day is the hologram tech. Fortunately, hologram screens under development. The next layer would be integrating gesture interaction. Once we have those two pieces, developers will certainly be working on organizational apps for the holographic platform. We already have hands-free tech like Siri and Alexa that we can use to make voice memos and reminders, and some gesture tech like the X-Box Kinect and the Harry Potter Wand remote.

For now, I’ll remain tied to my to-do list and Trello board, and dream of a day that I can orchestrate my life like a genius billionaire.

It’s my turn to host Blogging Monday! This is our second month blogging together on the same topic. If you are a member of Operation Code, please read the forum post here. But if you are not a member and want to participate, read on.

To participate, write a blog post!

Although recommended, the post does not have to be on topic.

Please set article to go live the day of the event (this month it will be October 23rd), preferably, at 0000 hours.

Blog post should mention Blogging Monday, or have #BloggingMonday in the post title.

There should be a link back to the invitation post

Send your post to the host on Slack via Direct Message (DM)

Don’t forget to post your article link in #blogging

If you want to participate and you aren’t a member of Operation Code, disregard the last two bullets and just post a link in the comments section of this post.

This month’s topic: What piece of sci-fi tech do you wish we had already?

Here are a few ideas to help you flesh out your post (all ideas are optional, of course):

Why this specific tech?

What scientific/technological advances need to be made before it can exist?

What social advances need to be made before it can exist?

What do we have already that is similar, and how does it need to be improved?

What program language would it run if you could program it today?

How close are we to having this tech?

I had originally thought of asking, “What is your creepiest VA story?” since it would be a fun for October. So, if you can’t think of anything from your favorite sci-fi flick and have some bizarre story from one of your visits to the VA (or any other hospital) you can share that instead/as well.

I am participating in a fun little blog event called Blogging Monday with some team members from the Operation Code community. This week’s topic is our inaugural – and quite appropriate – topic, ‘Why I joined Operation Code?’ posted by Mr. Bob Roberts.

To answer this question, I need to answer why I got into coding. I am currently an administrative assistant; it is a job I am good at, however not a job that fulfills me. At the time, I was miserable; I’m not yet 30 but I have hit my pay ceiling, I dislike/am not good at customer service, and I loose 10 hours a week commuting. So, I started taking ‘what job should you have’ surveys, looking at jobs for introverts, jobs for my Meyers-Briggs type, etc. And all of them listed ‘web developer’. I’m not quite religious; I consider myself spiritual (a different blog post for a different day). This was one of those, “Ok God. I get it.” moments.

So, I went looking for free learning resources to start getting up to speed on web development. I also started some soft networking; mentioning it in my skills on LinkedIn, asking folks I knew in the tech industry for hints/tips, and I also joined a topic on Rally Point for web development. Maybe a week after I joined that topic thread, one of the OpCode founders had posted a link to Operation Code.

Operation Code is a community that helps veterans and their families with mentorship and resources to enter the tech field, whether is is web development, security, app development, and all things tech. We have members who do just about everything.

Basically, I had found my people. So, I made an account, joined the Slack team, introduced myself… and they haven’t kicked me out yet.

What I love about this community is that everyone is at a different point in their career. There are all types of perspectives and questions being asked and answered. Folks are so willing to help; I have thought about quitting my job just so I can have time to read through all the resources members have shared with me (but, bills). I have almost quit my job because of the opportunities members have shared with me – and that’s that’s kind of the end goal.

I also appreciate their unending patience with my newbie questions; both truly “I don’t know what I’m doing” questions, and questions that seek deeper understanding of a topic that is only tangential to what I want to do. I also love how everyone wants to be a community: I am involved in developing an app with a team of OpCode members, we have started this Blogging Monday thing, someone mentioned going through a book together once it’s released, there’s opportunities for members to help on the website, we don’t ostracize members who aren’t vets, and there are channels for just about everything.

In hindsight, it was a good impulse click.
So, go visit Operation Code, snoop around, and donate if you can.

For the better part of three months, I mostly used GitHub as a way to log into several tutorial sites, though I figured I would eventually need it to showcase some of my projects. Fast forward to “eventually”, and now I am learning the ins-and-outs of the Command Line Interface (CLI), and GitHub, and this, and that, and working on a couple small web projects, and pretending I’m helping with an app, and working a full-time unrelated job.
Y’all. I need my GeoCities and my youth back.
I have broken down some Git/GitHub terms in ways that they have made sense to me.
This may or may not be the first post in a series. It depends on how much I learn and whether or not I get my life together.

At the beginning of August, I took on two different small web development projects. It’s now September 10th. It has been at least a month and a half and they are both winding down now and I am finding time to get back to fiddling with JavaScript.
You know what I remember after a month and a half?

Nothing.

Zilch.

I had started a mean/median/mode calculator and got pretty far along with it. Here I am trying to hop back in and I don’t know what I am looking at anymore. So, I am back on Lynda and Code Academy, relearning JS. For a third time. I think I am going to use JavaScript30 this time, too.

It is what it is and I’m certain I’m not the only one who has had to relearn a language. Here we go!

Learning how to code is hard. It is literally learning a new language. HTML and CSS were easy, but I am struggling with JavaScript. I feel very strongly about completing a project in JS for my portfolio before moving on to PHP.

I’ve met a good handful of folks who turn up their nose at PHP. Apparently, it’s an ugly, unoptimized language. But, I want to learn it because I plan on working with a lot of CMSs. My short-to-mid-range goal is to build websites for small businesses that either don’t have the time or skills to build one themselves, but would be capable of updating and managing it once built. The world of CMS runs on PHP.

In the present, I am currently assisting on an update and remodel a charity website on WordPress. I am using the Visual Editor plug-in – which while not code, is still a bear to learn to navigate.

*Please note that I did not build the theme/template.

Here’s what I’ve learned:

Visual editors are nice, but it’s still not as flexible as code. If you know what you are doing with code, possibilities are much less restrictive.

Mostly, where things are on WordPress to change them.

How to embed a Google Map.

The importance of site maps.

How to maintain a relationship with a client.

I really enjoy having this project. I am incredibly grateful to the CEO, Elizabeth Bannon, for giving me the chance to work on it and become familiar with an actual WordPress site instead of just playing with a localhost mock-server. Please visit 🙂

I haven’t been coding long, but the longer I code, the more there seems there is to learn. HTML and ‘vanilla’ CSS? A cinch. Wait, what’s a processor? Oh ok, how do I do that? Install – no problem! Terminal? huh?

What.

Ok, ok. JavaScript. Harder, but concepts make logical sense. I can write a loop. Naturally, arrays are no problem. I can name variables and create functions. Heck, I can write a handful of event listeners. Stringing them together to get a program is what gets me. Ok how about React and Vue.js? I can’t even make a little app with ‘vanilla’ JavaScript yet.

PHP – this is going to be my bread and butter anyway. And it’s similar enough to JS I could probably backtrack to that later. Lets get started… set up the environment. I can’t just…? Terminal again. Nuts. Ok. Clone this repository, ok. Bash profile? Aaaand I broke it.

Lessons learned: it is really, really great to have a community or network of experienced folks who are willing to help out and patiently answer all your newbie questions.

About K. MacLeod

Kelly MacLeod is an administrative assistant looking to hop into a web development career. Admin life is nice, but having already reached her earning potential way before the age of 30, it is time to look for greener pastures.