How to Not Write Academically

I’ve discussed before that English classes and tests through high school and college don’t measure how good you are at real writing. They measure how good you are at academic writing. As such, if your only experience with writing comes from English classes, your writing is probably very academic. Unless you’re looking to be a professor or researcher, you probably don’t want that, because you probably know that academic writing is generally boring to write and to read. Still, it’s hard to know what the hallmarks of academic writing are, or how to stop.

Today I’ll be telling you what academic writing looks like in detail, as well as how to stop doing the academic thing and start doing the real writing thing. I’ll also give some general writing tips and ways to “find your voice”, or, find your own unique and interesting way of writing.

One of the most common things I’ve seen from people who were taught to write academically is that they never use contractions. Things like “I’ve”, “don’t”, “it’s”, etc. Not using contractions is an easy way to add extra words and sound more formal, and given the word count minimums in many English classes, plus the formal tone of most academic writing, it can be easy for students to fall into this trap. The grammarians are up in the air as to whether or not contractions should be used in formal writing, but the agreement is that for informal writing (blog posts, for example), it’s completely fine.

Here’s another one: excessively complicated sentences, or passive voice. I group these together since they often combine to create a monster of incomprehensibility. When you’re trying to convey complex thoughts, it can be easy to let your sentences become complex as well, but for the sake of your reader, try to write as simply as you can. There are two simple hacks for this: use the passive voice as little as possible, and break your sentences when you can.

For example, let’s take what I wrote above: “try to write as simply as you can”. It’s in the active voice, it’s simple, and it says exactly what you should do. In a sentence that’s already pretty long, the simple phrase wraps it up. By contrast, if I’d said, “writing as simply as possible is important”, is in the passive voice, it’s complicated, and it’s not immediately actionable.

Here’s yet another one: academic writers don’t start sentences with conjunctions. Overall, a lot of people have the mistaken impression that using words like “and”, “but”, “so”, etc. at the beginnings of sentences is poor grammar, but actually, all major style guides say otherwise. The only reason almost everyone thinks it’s wrong is because we were taught so in school: evidently sometime in the 19th century, “some schoolteachers took against the practice of beginning a sentence with a word like but or and, presumably because they noticed the way young children overused them in their writing. But instead of gently weaning the children away from overuse, they banned the usage altogether! Generations of children were taught they should ‘never’ begin a sentence with a conjunction. Some still are.” (source)

Those four things are, I’ve found, the most common ways that people write academically by accident. Even so, there are a huge number of others, and which ones you in particular tend to use depends on who taught you English and how you learned. How do you get completely out of the academic writing mindset if you’re not sure exactly what you’re doing wrong?

I’ve got a simple trick for you that not only will help you stop writing academically, it will also help you find your voice (your unique way of writing). First, write something on a topic you know well. Then wait a while, probably a day or so, until you forget the specific words and phrases you used. Then, record yourself talking about the same topic and transcribe the audio. Finally, compare the two. How is your spoken word different from your written one?

You’ll probably find some obvious differences, like when you talk, you stutter and say “um” a lot more. But you’ll probably also find a lot of non-obvious differences. Maybe your writing sounds verbose and stuffy since you use words you never use when you talk. Maybe there are colloquialisms you use when you talk that you don’t use in writing. Maybe there’s something else entirely. Whatever it is, you’ll find out, and then you can use your own judgement as to how much of your speaking style you want to add to your writing.

For further reading, John T. Reed makes a lot of the same points in his book, Succeeding.

A lot of people accidentally fall into the trap of writing academically, since that’s almost exclusively what our public school system teaches. But if you can realize when you’re doing it and if you know how to stop, you can break the habit, and find your own unique style. Write for your reader, not for your high school English teacher who neither matters nor cares anymore.

Don’t Just Be The Best, Be The Nicest: The Importance of Soft Skills

Many people think that the best thing you can do if you want a job is to be better at the job description than anybody else. If it’s a sales job, be an amazing people person. If it’s a tech job, know more about computers than anybody else. And on one hand, this seems obvious. The most important part of a job is the job itself, anything else must be incidental. Right?

Surprisingly, no. Let me show you why.

My mother used to work in a big company with a sales team. And there was one guy in particular on this sales team, let’s call him Leonard.

Leonard was a very energetic and incredibly competent salesperson, who was very good at persuading. He did the mechanics of sales exceptionally well. He wasn’t brilliantly charismatic, but he was really, really good at the simple mechanics of selling. Prospecting, understanding politics within the prospect’s environment, getting in front of the right people at the right time… he was brutally competent.

The problem was, he knew it. To prospects, Leonard was charming. To people above him in the hierarchy, he was at least civil. But to everyone at his level or below him, he treated them like deficient peons. It was obvious he thought that he was so much better than them. He treated the back office and support staff as if they were his personal servants. Nobody inside the company liked him, but they had to be nice to him because he just Kept. Landing. Contracts. Over. And. Over.

The only reason nobody fired him was because he was literally twice as good as every other salesperson, combined. But if he ever slipped up, stopped being so gobstoppingly brilliant, or if the company ever found someone as good, he would absolutely be drop-kicked out the door in an instant.

Why is that? After all, isn’t your competency at the job description supposed to be the most important thing?

We all know instinctively what Leonard did wrong. He was a jackass. And if you’re a jackass, there is very little you can do to redeem yourself except be leaps and bounds better than literally everyone else, because that way the company can’t afford to get rid of you. We all also know instinctively, therefore, that your competency at the job description isn’t the single most important thing.

Still, we probably still think it’s one of the most important. Surely you’d choose someone who can do the job well over someone who can’t, even if the someone who can’t is cheerful, reliable, and hardworking, right?

No, not really. Here’s an example from my own experience in sales.

I’ve written before about my sales job, and the fact that I applied for it, got it, and had it for months despite being severely under-qualified in every notable area. Circa the time that I started the interview process, if you’d asked me what a sales funnel was, I wouldn’t have known. Not only that, I was super socially awkward.

Here’s why none of that mattered, why they hired me anyway, and why they proceeded to not fire me.

During every interview (there were three), I showed up ten minutes before I was supposed to be there. I was cheerful and enthusiastic. I wore my utter lack of sales knowledge on my sleeve, accompanied by a “but I’d love to learn!” and a big grin. As I moved through the interview process, I listened to sales podcasts when I drove. When I had down time, I read sales manuals like You Can’t Teach A Kid to Ride a Bike at a Seminar. I was determined to learn as much as I could before I even got the job. In my third interview, I asked the hiring manager for her suggestions for sales books. She suggested some. I read them.

After I got the job, whenever they taught me something, I would spend all my available down time practicing it. Listening to podcasts on drives turned into reciting my sales pitch. I continued to read sales manuals, now in the context of what I’d learned. And when I was working—aka, when I was walking around knocking on doors; this was a door-to-door kind of a sales job—I asked questions, I watched and learned from the better salespeople I shadowed, and I tried as hard as I could to make working with me easy. Essentially, I made up for my complete lack of charisma with a great attitude. In an environment like sales, where we had on-the-job training, that was the most important thing.

Both of my examples have been about sales so far, and while this has been a coincidence, it does mean that I need to explicitly note something here. While half of the important background for sales (namely, the understanding of how sales itself works) is commonly taught on the job, that’s not the case for a lot of other jobs. So, it’s important to note that unless you meet the bare-minimum prerequisites for the job in question, no amount of attitude will get you the job. Even the most cheerful prospective neurosurgeon won’t get the job unless they’ve got a medical degree.

Still, once you’ve reached that minimum level of competency, soft skills like punctuality, reliability, cheerfulness, willingness to learn, etc. become much more important. Companies frequently hire people (like me) who are objectively worse at the actual job, but who are more pleasant to work with.

All of that said, here are some of the top soft skills which are more important than your competency at the actual job.

  • Enthusiasm. Companies like nothing more than seeing that someone wants to work for them.
  • Willingness to learn. Especially if you’re under-qualified, but honestly in any circumstance, this one is important. This one is extra important if you’re planning on going into tech, just because of how fast the field moves: even if you knew everything there was to know yesterday, something might get invented today that’ll make that old knowledge useless.
  • Ability to take criticism and improve. This one goes hand in hand with the previous one, and is just as crucial.
  • Humility/kindness/otherwise being a nice human being. This one is a bit less important, because sweet people still get fired if they won’t learn and improve (since they’re a drain on the company), but if you’re already pretty good about learning, you’ll want to make sure people like you, too.
  • Working hard. Basically, make the absolute most of your time at the office, and feel free to take the job home, too. There are tons of people who refuse to take their work home (something about “work life balance”, which seems to mean “I’d rather watch TV than achieve my goals”), so you can get ahead of them by doing simple, easy stuff like listening to a podcast on your drive home instead of the radio.
  • Be willing to do the grunt work. Somebody has got to fetch the coffee, make the copies, move the furniture, order more sharpies, and organize the company lunch. If that person is you, then you have made yourself invaluable. If you think you should be “above” that kind of work, and so that person isn’t you, then it’s probably going to end up being the CEO, or the VP of something or another. Nobody is “above” grunt work. Forward Tilt actually has a great episode about this.

Everyone knows that all other things being equal, soft skills are important. If you’re just as competent as the next guy but you’re more fun to work with, you’ll probably get the job. But what most people don’t know is that all other things don’t even have to be equal. Companies hire people all the time who aren’t as competent, but are easier to work with. Obviously competence matters, but once you’re over the minimum competence level, soft skills matter more. Being more competent doesn’t necessarily make you more likely to get a job if you don’t have the soft skills.

Why You Should Do Athletics

I bet you think I’m going to say you should do athletics because it’ll keep you healthy and generally make your life better. Well, it will absolutely do that, but today, I’ll be talking about something else.

To start with, let me ask you a question. Do you know where your limits are?

Can you tell me what your physical limits are? How long can you hold your arms out to the sides? I’m not asking how long you can do it before it hurts. I’m not even asking how long you can do it before it hurts seemingly too much to bear. I’m asking how long you can hold them before your muscles physically give out and your arms drop limply to your sides.

How about your mental limits? What’s the most difficult problem you can solve? How long can you focus on a boring task? What about working in a team; what’s the most difficult project you’ve helped to complete?

These seem like personal questions, and they are. Fortunately for you, I’m not asking you to scream your answers from the rooftops, to tell them to me, or even to say them aloud to an empty room. I’m only asking you to consider whether or not you have answers, within the comfort and privacy of your own mind. The answer will tell you something important.

I recall a conversation I had with my fiancé. I was trying to explain how difficult a project I was working on was, and by way of trying to explain my level of mental exhaustion, I asked, “have you ever worked a muscle to failure?” It turned out that the answer was actually “no”, and I honestly didn’t know how to work with that.

It occurred to me then that an awful lot of people actually don’t know where their limits are, mentally or physically. They’ve never pushed themselves as hard as they possibly can. And because of this, people almost chronically underestimate themselves. If you don’t know the upper limit of what you’re capable of, you assume de facto that the best you have done is the best you can do.

But let me tell you something. The best you have done is not the best you can do. The best you have done is, at most, the best you think you can do. Your actual uppermost limit is probably much higher than anything you’ve done before.

If you get into a squat and hold it, you won’t feel anything at first. After that, you’ll start to feel a bit of a burn in your legs and core. If you hold it longer, the burning feeling will get progressively worse. Your legs might start to shake. If you keep it up long enough, you won’t be able to focus on anything other than the pain. Now, you might think this is your natural limit, but actually, it isn’t. Your mind might not be able to keep going, but your body certainly can. Your body doesn’t give up until your muscles literally do not have enough energy to keep holding the position, and if you can get all the way there, you’ll somewhat anticlimactically fall on your ass. That is your natural limit.

There’s a pretty big delta between the point at which you think you’ve hit your limit and the point at which you’ve actually done it. That delta is your untapped potential. It takes a lot of focus and raw chutzpah to access, and it requires pushing through a lot of pain, but you’ll realize that you can actually do a lot more than you thought. And in the process of working to failure, you’ll improve so much faster than someone who just gives up when it gets painful. The human body is not static; it improves based on what you throw at it. If more shit hits the fan, the fan gets stronger.

This isn’t just about sports and working out. People are pretty bad at finding their mental limits too, for the exact same reason: it becomes painful a long time before it becomes impossible, and a lot of people think massive pain and difficulty is their upper limit. But if you can focus and muster the chutzpah, the immensely difficult can become routine, because you can adapt and improve. Because the human mind is not static, either.

Why College Should Not Be Free

At the moment, there is a debate over whether or not college should be made free for everyone. And at first glance, the obvious answer is yes. College is outrageously expensive, and making it free would allow everyone access without forcing anyone into debt.

But there’s a presumption backing this “obvious” answer, and the presumption is that college is necessary. It would be perfectly reasonable in a context where the thing involved (i.e., food, clean water, etc.) is a basic human need, but college is not. I covered some of the reasons in my essay, I Am a Four-Year College Opt-Out—high monetary cost, high opportunity cost, lack of applicability of the coursework to the real world, etc.—but in essence, college is not the only path to success, and for many people, it’s not even a very good one.

But even if college isn’t necessary, what harm would it do for college to be free for those who want to attend? After all, debt is crippling the nation’s youth, and wouldn’t it be nice if that went away? Of course only a stingy old fart who doesn’t think young people “deserve” an education would say free college is bad, right? Why am I writing this essay?

To answer these questions, let me skip back in time and tell you a story. It is 1920. The uppermost level of compulsory education isn’t 12th grade, it is 8th. High school as we know it now does not exist; in its place sits something that looks more like college: an elite, expensive program which only accepts the top 5% of applicants. Because high schools only accept the very best, those who graduate are almost guaranteed high-paying jobs.

This began to change in 1954. Some guys saw all the high school graduates getting great jobs and had a bright idea. If we make high school free, they thought, then everyone will be able to get a high school education, and thus, a great job! The problem was that the only reason high school graduates had gotten great jobs was because of the rarity of their education. And over the next fifty years, as high school was made free and subsequently mandatory, a high school education became completely useless. The only thing gained was four more years of compulsory schooling before children, now more properly young adults, could begin working.

This has already happened before! This whole argument and discussion, should we take this elite program and make it free, of course we should because it’ll give everyone good jobs, it’s happened before! It will be just as ineffective this time as it was last time, because nothing has changed. Post hoc ergo propter hoc is still a logical fallacy, and people are still making it. In the exact same way as before. Those who fail to learn from history are, as they say, doomed to repeat it.

Now let me present a possible vision of the future. It is 2056. College has been made free and mandatory, and the little value it still had has been completely erased. The only thing gained has been four more years of compulsory schooling before young adults, now more properly adults, can begin working. The societal definition of “child” goes from “under 18” to “under 24”. The average human lifespan doesn’t change, it simply becomes normal that humans spend the first full quarter of their lives in the artificial school environment, which is just as pointless as ever: the students care as little about learning as the teachers care about teaching, nobody gets paid enough, and everyone is miserable. One day, a 24-year-old kid reads an article which says people are trying to make graduate school free, and she thinks, “Huh. That seems like a good idea. Then, everyone could have a good education for free.”

In writing this, I don’t want to cast my ballot on this issue as “the system is fine the way it is”, because the system is not fine. But the way to fix it is not to commit the same logical fallacy that we already made less than a century ago. The problem is complicated, and a complicated problem cannot be fixed with a three-word solution. “Make college free” is not the answer.

I hope this essay can open a discussion on the real answer. It will have to contain a solution to the college debt crisis. It will have to take into account the fact that our current public school system was designed to churn out good factory workers, despite the fact that we now need entrepreneurs instead. Preferably, it should contain a solution to the public school system’s current problem of not teaching important skills (how to pay taxes, what laws exist and how to change them, etc), but I know better than to get my hopes up. I’ll settle for just finding a way to teach skills that are legitimately important for purposes of starting a career, such as the importance of both cheerfulness and good writing. But even if this essay can do none of that, I hope that it at least made you consider this debate in a different light.

See you tomorrow.

English Classes Don’t Teach Writing, or, Why I’m Proud of My 3 on the AP English

I love to write. This is pretty obvious to anyone who knows me at all: the first paid work I did for someone outside my family was writing articles for SEO, I met my high school English requirements before I started 9th grade, and still I continued to write and read profusely and extensively throughout high school and college.

Writing for me has taken many forms. For long periods of time, I kept a daily journal. I wrote posts on many different blogs over time. I wrote long essays in the comments sections of YouTube videos, arguing with strangers. I’ve written everything from letters to politicians to novels.

I just write by virtue of existing. If I’ve got thoughts, they either come out of my mouth into the air or they come out of my fingers onto a keyboard. For the dramatic most part, I took no formal writing classes. I just read interesting stuff and I wrote what I thought, and I analyzed my writing in light of what I’d read to find ways to make it better.

And it was with that background that I signed up for the AP English Language and Composition. I was excited! I got to be in a class with tons of great writers, who loved to write just like I did! The syllabus included weekly the writing of a 2-3 page essay and the reading of 1-3 novellas! Honestly, it looked like a dream come true. If all writing classes are this awesome, why hadn’t I taken one sooner?

This enthusiasm continued throughout the first few weeks. At the time, I was also taking two other classes through the same online program, so I only took about two days to do the work. One day to read, and a second to write. I got good grades, and I was happy. My only minor quip was the fact that on our class homepage, my teacher posted the best essays for any given assignment. My essays were never on there.

I was a little bit bummed, but I figured, there had to be somebody better than me. And yet, when I downloaded their essays to try and learn from them, I noticed something very strange. Their essays all seemed to be clones of each other. They all followed basically the same formula, and it wasn’t even that interesting a formula. Besides their names printed at the top, there was no way for me to tell who’d written which essay. When I read books, I felt like the author was speaking to me in their own unique voice, conveying information that was important enough to them to have written a book about it. When I read my classmates’ essays, I just saw words.

I’d like to say I was completely disillusioned to the falseness of accomplishment in academic writing, and I went on to join such great writers as Stephen King and Kurt Vonnegut in saying so. I wasn’t, and I didn’t. I was just confused.

The realization that getting good grades in an English class and being a good writer were totally different things didn’t come for me until many months later. In the meantime, I’d already begun to question what everyone in my life had been telling me for years: that I was a good writer. Over the course of the class, I didn’t just never get on the “best essays” list. I also got steadily worse grades. My literary analyses got bad marks. I occasionally got Bs on assignments. (Shut up, it was devastating at the time.)

As I do, I responded to all of this by buckling down and working harder. My two easy days for English class became three hard ones as I tried (and failed) to understand why my writing wasn’t good enough. My mental state was shot. I didn’t know what to think about myself. At the same time that my English class was telling me I was average at best, others continued to tell me that my writing was great. I started correcting them, because of course your English teacher knows more about good writing than your prospective audience. Who cares if it’s interesting, it got a B, so there must be something wrong with it.

But the class ended, and a few months passed. I kept writing, because that’s what I do, and I showed it to various people. Just like they’d been saying the whole time, they said it was great. And outside the environment of the class, I started to consider the concept that maybe the class wasn’t as important as I’d thought. After all, in real life, if you can captivate your audience with interesting work, what else is there? I got my final score on the AP test (think of it as a comprehensive final, and the only grade that matters; it’s scored on a bell curve from 1 at the lowest to 5 at the highest), and I got a 3. I wasn’t too surprised, but I also wasn’t too hurt.

At the time, I figured that I was just awful at rhetorical analysis, and that was the reason my score was low. It was a good reason for some time. But I’ve since realized that there’s a deeper problem going on here, and that is that good academic writing is not good writing.

Good academic writing feels impersonal, mostly because it’s wordy. Not in the sense that academics have a broader vocabulary, though most of them do; their sentences are just way too long for the thoughts they convey. Academic writing goes “During the upcoming period, this project will be continued”. Normal writing goes “This week I’ll continue my project”. The academic version has 1.5x the word count for the same thought, it’s in the passive voice, and it’s boring overall.

The purpose of all those words, so far as I can tell, is twofold. For one, it completely snuffs out the author’s individual voice and replaces it with the simple meaning of the words. And for another, it makes the writing super formal, because it overuses a construction that English-speakers use to make something more polite. For example: A rude apology is “Sorry.” A polite apology is “I’m so sorry, I wasn’t trying to hurt your feelings.” More words = more effort = more polite.

Plain old good writing, on the other hand, conveys a lot more about both the author and the subject. When an author lets themself write sentences like “I was excited!”, “Meh, it wasn’t a big deal”, “I was just confused”, and “Can you believe that?!”, it makes it way more obvious what the author is feeling. It makes it obvious that the essay didn’t just apparate into existence, somebody had to write it.

The main problem with using AP English as a gauge of my writing wasn’t that it isn’t a good gauge; it’s fine. It’s just a gauge of the wrong thing. AP English is designed to prepare students for academic writing (because the classes are designed by academics, so their subject matter is disproportionately biased towards things that would be useful for academics; but that’s a topic for another day). If you just want to be a good writer, you don’t take AP English. If you want to be a good writer, you do what I’d unknowingly been doing all along: read good writing, write what you care about, and fix your writing based on what you’ve read. So, since I do want to be a good writer, I suppose that’s what I’ll keep doing. See you again tomorrow!

How I Was Homeschooled

You may already know that, from a pretty early age, I’ve been homeschooled along with my siblings. You may not know, however, what exactly I mean when I say that. And honestly, it’s pretty difficult to get solid information on how homeschooling works, primarily because “homeschooling” is really a big bucket full of many philosophies, reasons, and families.

Most people homeschool because they want or need to school their children differently than how the public school system does it. There are a number of ways this could present itself: there are highly educated professionals who believe they are more capable than a public school teacher to teach their children; there are parents whose children have severe autism or other developmental disabilities who believe they will be able to help their own children individually better a public school teacher who has to corral fifty kids each day; and many more.

Among these, the most common method of organizing the homeschooling process between parents is to have one parent working, and the other staying home to homeschool the kids. This seems like the sane route: after all, kids take up a lot of time and require a lot of attention. If the breadwinner has an office job, they’re not going to be home often enough to help the kids; if they work from home, the kids will be bothering them with questions so often that they can’t focus on working. And for most families, this probably is the sane route. But my mother, Stanford graduate, who flew a plane and worked for NASA, would not take “sane” for an answer, and did the bloody thing anyway.

Throughout her childrens’ entire homeschooling lives, my mother has been working around 50 hours a week, in addition to running three small businesses. And this has created a very strange kind of homeschooling, with some very strange and specific benefits and drawbacks.

The obvious drawback is that she’s had a lot less time to spend on homeschooling her children. And at first, when we were just quitting traditional school, and when we were just getting used to the concept of working from home, it was difficult. But rather quickly, it developed into a bunch of neat advantages.

Firstly, since she’s been actively working a career, she factored a ton of career preparation into our homeschooling. Where a lot of homeschool parents are myopically focused on getting their kids prepared for college, my mother was also preparing her children to work. With that in combination with our work for her businesses, we got a very well-rounded and immersive understanding of careers and business.

Second, since parts of several of her jobs have involved hiring entry-level employees, she knows what colleges tend to prepare people for, and she knows what they don’t. And with that knowledge, she could systematically teach us the things that we would need to know for our future careers, that we probably wouldn’t learn otherwise. One such lesson that I learned very, very early on was the importance of a positive attitude. If you’re willing to learn and you’re cheerful, everyone will be happy with you, even if you aren’t very good at your job. But on the other hand, if you’re an asshole, you have to be leaps and bounds better than everyone else – I’m talking twice as good as everyone else in the office, combined – for people to tolerate you enough to keep you. You don’t learn that in high school or in college: if you show up and you learn the material and you get good grades, literally nobody cares how pleasant you were to be around while you did it.

It wasn’t just the career itself. It was also the apparent drawback of her lack of available time that also turned out to be helpful.

My mother was never available at the drop of a dime. I had to wait for her to be done working, and I frequently had to plan out when I needed to talk to her about something. I got used to sending her emails asking for help with things. Now that I’m in the Praxis program, and I have mentors that I can contact, I’m seeing a lot of the same thing that I got used to growing up. You can’t take for granted unlimited time from a mentor. They’ve got a real-life job, and though they’re happy to help, their time is a limited resource. So it was with my mother growing up.

If you think about it, this is the polar opposite of the public school system model, where the teacher’s job is to teach, and nothing else. People don’t value what is abundantly available, and you can tell that school kids don’t value the time of their teachers. But you can be that employees value the time of their mentors, because they know that their mentors have important jobs that have nothing to do with them. And so we valued my mother’s time, like we would value a mentor’s.

Furthermore, sometimes we just couldn’t reach her. Sometimes she was just unavailable (she was at the office, on a business trip, or her clients were having serious issues). And so, sometimes we just had to find an answer from somewhere else. This was another way in which our education was very different from the traditional school system: a school teacher is supposed to have all the answers to all the student’s questions. A student’s first, last, and usually only resource is their teacher. On the other hand, my mother’s semi-frequent absences meant that to answer our questions, we had to do research on our own, or reach out to each other.

The relationship I had with my mother, and the relatively unique type of homeschooling that we all had growing up, was useful in a number of ways for shaping all of us. I’m just glad she was crazy enough to do it.

Why to Use CSS Instead of JavaScript for Your Menus

Before I start on this post, if you haven’t read Good Tech Things to Know, I recommend you read that one first. I’ll be referencing what I wrote in that post for purposes of explaining the tech in this one. If you already have a basic understanding of what both JavaScript and CSS are and what they do, you’re welcome to hang out here, but the link’s still there if you need it.

That said, let’s dive into a lesson I learned very recently: why to use CSS instead of JavaScript for menus.

To start off, let’s explain what I mean by “menus”. A menu is just a place that a user can go to choose from different options; just like in a restaurant. In the context of websites and applications, menus can be used for navigation, selection, input, and more. There are a number of types of menus, but one of the most common, especially for navigation on websites, is a drop-down. Here’s an example. You can hover your mouse over the square labeled “Two” and get four additional options. Here’s another example. You can click on any of the squares with arrows and access additional options. This example is a bit more complicated, since hovering over some of the options shows yet more. Still, both are the same style of navigational menu.

The first example menu is created with CSS. The second is created with JavaScript.

It’s pretty easy to understand how you could create a menu like that with JavaScript. After all, JavaScript is a programming language, and programming languages can make decisions and do things. The decision for a drop-down menu goes something like, “if the user hovers over the square labeled ‘Two’, then display the drop-down; if the user stops hovering over any part of the menu, then stop displaying the drop-down.”

But if you recall, CSS is a markup language. It doesn’t make decisions and it doesn’t do stuff, it just styles HTML. So how exactly is it possible to make those decisions using CSS, and why am I saying it’s preferable to do so?

To answer the first question, I’m going to delve a bit more into how CSS works. Don’t worry; I’ll make it easy.

The basic structure of CSS is a bunch of commands that look like this:
property: value;
For example, take the statement “color: blue”. Color is a property which tells the computer what color a piece of text should be. It has a huge range of possible values. Blue is the specific value of the color property that we want to use in this circumstance.

A lot of the time, CSS properties don’t have such obvious names. For example, what do you think “margin: auto” does? It’s not obvious by reading the property name, so the programmer needs to know by rote. (Which this programmer does. “margin: auto” centers something.) So, the process of coding CSS is essentially translating between what you want the computer to do, and what properties you should set to what values to make that happen.

For purposes of creating drop-down menus with CSS, the single most important property is “display”, and the most important value of that property is “none”. Basically, “display: none” removes something entirely from the page. It’s like a CSS backspace key.

This “backspace key” is really useful for doing things like removing a drop-down menu from the screen when the user stops hovering over it.

So if that’s the “then” part of the statement “if the user stops hovering over any part of the menu, then stop displaying the drop-down”, how do we code the “if” part? How can we tell whether or not the user is hovering over the menu?

Fortunately for us, the part of the computer that figures out whether or not the user is hovering over the menu is not programmed in either JavaScript or CSS. It’s built into the web browser itself. So, both languages have the capability to figure that out. In JavaScript, it goes
if (!'.nav'))
In CSS, it goes
.nav a:not(:first-of-type) { display: none; }
Don’t worry about not understanding those code snippets, I just wanted to show them to you to demonstrate how different the same basic code looks in different languages.

So, we’ve got both pieces. We’ve got the decision, and we’ve got the action. And so, we can program drop-down menus with CSS, even though it’s not technically a programming language. Pretty cool, eh?

Now, I did previously say that not only is programming menus with CSS possible, it’s actually preferable. There’s one simple reason for this: ubiquity.

An unfortunate fact of life for web designers is that not everyone is going to be seeing your website in the same way. Their screen size could be bigger or smaller, or have different proportions. Their browser could be different from the one you use, or it could even be text-only. They may have some extensions enabled that you’ve never heard of, and they may not have extensions enabled that you use daily. And every one of these differences affects how that user will view your website. If your website isn’t usable to everyone on every device with every setting, you’ll drive away a ton of potential customers.

I bring this up because JavaScript is actually one of those potential differences between you and your users. There are a lot of people who don’t have JavaScript enabled. If you program your website’s navigation using JavaScript, your website will be completely unusable to someone who doesn’t have it enabled.

Nobody wants to disable CSS, however: while JavaScript is frequently used to make pop-ups and ads visible, and otherwise isn’t used for integral functions; disabling CSS would not prevent ads from being displayed and is one of the most integral parts of a webpage.

So, CSS is ubiquitous whereas JavaScript is not, and a crucial piece of your website should not be created with a non-ubiquitous language. That is the reason that I recently deleted all the JavaScript code I had for my website navigation and decided to start over with CSS. And that is the reason that you should program your menus with CSS instead of JavaScript.

Portfolio Project: Week 4

Hey all! So for the very last update of my portfolio project month, I’ll be doing something a little different. I wanted to elaborate more on exactly what it is I’ve been doing, and I also I wanted to talk about the lessons I’ve learned overall. For all of these reasons, this is going to be a little bit of a longer post than my other updates.

What I got done

I passed my MTA JavaScript and added it to my website. This is the last MTA I wanted to get this month: I’ve now got them for almost all my major marketable skills: HTML/CSS, JavaScript, and Java. The reason I wanted to get these certifications is that they are externally recognized demonstrations of my skill. They communicate to potential employers that not only do I say I know how to program in Java, a third party recognized me for that knowledge.

I coded three brand-new pages on skills—SQL, Java, and HTML/CSS—thus completing my goal for this project. Honestly, once I stopped trying to make my skills more impressive and just decided to put them out there, it felt nice. And beyond just feeling nice, having these pages on my site gives more detail to potential employers about what I’ve done and how. My next step here is probably to ask some friends and family to read my content and give me feedback so I can add detail, improve explanations, and consolidate information. A website is really never finished, so though this project is properly done, I’m going to continue improving the pages I’ve created as well as adding new ones.

I continued to work on the drop-down menu, but I pushed it onto the back burner so I could complete my stated project goal. Actually, I talked to a fellow developer early in the week and ended up completely scrapping my previous code and starting over. The reason for this is that my previous code was in JavaScript, and there are a lot of people who don’t have JavaScript enabled. A crucial piece of my website should not rely on something that not everyone has enabled. As such, I will be programming my drop-downs in CSS from here on out. (Later, I’ll make a post talking about this decision in more detail. For now, here’s a post explaining what both of those things are and what they do.) Overall, while having this drop-down will be nice, I’ve linked all my content on my main Skills page, so it’s not at all necessary.

Also on my back-burner, I began creating a simple website for a local organization that my family has volunteered with for many years (called Schenley Park Learn to Skate). The main goal of this website is to allow people to sign up for the learn-to-skate program online, thus cutting down substantially on physical paper-pushing. Because of this objective, the project will be a good opportunity to learn how to integrate a SQL database with PHP – or in layman’s terms, to figure out how to gather information from many customers and store it all in one place.

Over the course of this month, I’ve passed three MTA exams, programmed four webpages, and made a number of miscellaneous fixes and improvements to my personal website, including improving mobile usability.

What I learned

Throughout this project, and especially in the last two weeks, I learned how easy it can be to fall prey to “scope creep”, or the natural way that humans accidentally allow themselves to work on a part of a project beyond its initially stated scope. For example, instead of learning skills and programming pages, I allowed myself to spend a lot of time on trying to code complicated features. It’s human nature to be distracted by shiny objects, but it’s human necessity to avoid that tendency, especially in the context of projects on deadlines.

I also learned the importance of work-arounds. If you’ve got a crucial piece of a project that’s not working, the appropriate response is not to put the entire project on hold to fix it; the appropriate response is to find a suitable work-around (there is nearly always a work-around, though it may be less efficient or elegant), continue with the main goal, and work on the piece you originally intended in the background.

Lastly, I learned more solidly than I ever did in school how much I know and how much I don’t. The school system (both high school and college) is based on levels and labels, but the real world is based on tasks. Someone who’s in school says “I’ve taken five classes in web development”. Someone who’s working in the real world says “I can program a responsively-designed website which conforms to XHTML specifications and which utilizes JavaScript, PHP, and SQL”. Within the span of a few months, I’ve transformed from the first person into the second.

I think this is a very good thing. It’s all well and good to say “I took a class in X”, but if your audience doesn’t know a lot about the specifics of the class and what it taught, they can’t translate that statement into what you can do. And for employers, who are looking at your website with a question (implicit or explicit) of “can this person do X thing I need”, a list of concrete skills is infinitely more useful than names of courses.

workflow for the week and the month

For this week, I honestly spent the vast majority of the time I didn’t spend working for money on writing content and coding. I really had no free time between those two things. It was kind of a throwback to my yearly cramming that I used to do every April in high school: every AP test, otherwise known as literally the only test that matters when taking an AP class, happens in May, so April is cram time for literally all of those classes. This past week was like that.

Still, this week there were no major setbacks, and I mostly got the opportunity to just focus on what I needed to do and Get Shit Done.

If I look back over the entire month on a day-by-day basis, it was sporadic due to a variety of internal and external factors. But I’ve noticed that all humans seem to be like this. Look at a human on a daily basis, they’re all over the place. One day is spent working incessantly and the next is spent getting almost nothing productive done at all. Or maybe one week is productive, but the next week is in shambles. The thing is, to understand any human you need to zoom out and look at trends. Look on a monthly or yearly basis instead of a daily one, and that will tell you how you’re doing.

Was I more productive today than yesterday? No. But it also doesn’t matter. The question should be, was I more productive today than last year? And the answer to that question is, yes, by leaps and bounds. Because on the whole, I’m trending upward. I’m allowed to have bad days. I’m even allowed to fall deathly ill and basically cease to exist on Earth for a week. The goal isn’t to be perfect every day, the goal is to look at where you are right now and compare it to where you were a year ago and see substantial improvement.

Did I meet my project goals?

Simple answer, yes. When I started this project, I had a very specific and achievable goal, and despite the setbacks of being sick and getting distracted, I achieved it. For four different skills,  I improved at a certain skill, and I also wrote content about that skill and added information about the skill to my website.

I decided on this goal in the first place because I knew I needed more content out there for employers to look at. Without a lot of job history in my chosen field, projects and certifications are all I’ve got to go on, so my main goal this month was really to get more of those.

And furthermore, viewing this in the context of the Praxis program I’m a part of now, every section (or “module”) is designed as an intensive exercise in one very specific thing. In the spirit of this, I chose my goal as an intensive exercise in one very specific thing: demonstrating my skills. I knew it needed to get done, so I took this month, I set specific goals, and I got it done.

What am I doing next?

The next month of the Praxis program is a 30-day blogging challenge, in which I write a blog post on some topic every single day. Honestly, I’m excited. I love to write, but I haven’t had as much time as I would like to do it. Being able to add more content to this page and discuss interesting topics on this blog is going to be amazing.

See you then!

Good Tech Things to Know: An Incomplete List

In today’s technology-saturated world, it’s very helpful to know some stuff about tech even if you’re not yourself a technologist. However, I’m very aware that good explanations of tech for non-tech people are few and far between. So, in this post, I’ll give some simple explanations of some of the most common tech things you might want to know.

The Structure of the internet

If you’re reading this, I’m going to presume you use the internet, and I’m also going to presume you know that it’s primarily composed of web pages. You probably don’t know, however, how exactly those pages are constructed.

Fortunately for you, it’s surprisingly simple. There are three main components to a web page: HTML, CSS, and a big bucket of other Miscellaneous Things. HTML and CSS are what are called “markup languages”. They create the structure and style of a page, but for the most part they don’t do anything. Miscellaneous Things, which include SQL and JavaScript, are “programming languages”: they actually do stuff, like perform actions and make decisions.

Think of markup languages like a static piece of text, and think of programming languages like a button.

Now let’s add some more detail about all of those components, starting with HTML. HTML stands for HyperText Markup Language. (The markup language bit you already understand, and I’ll get to the hypertext bit in a moment.) Essentially, HTML creates the framework for a webpage, by itself, with no stylization (color, layout, etc). Now, when you think of “framework”, it can be tempting to think of a wireframe: a website wireframe

But this isn’t what I mean. See, though there are no images or color, there is still style, because there is still layout. There are distinct sections. The spots to put images are different sizes. Text is organized in columns. HTML, by itself, contains none of these. HTML, by itself, looks like this.

ultra-basic pure html page

Kinda boring, eh?

Text is organized in a single column. It may be bigger and bold if it’s a heading, but that’s the browser’s default style; technically, HTML doesn’t do that, your browser does. If you display pure HTML, you get a single left-justified column of black text with images and links on a white background. (The presence of links, by the way, is the definition of hypertext. Remember I said I’d get to that? It really is that simple: “link” stands for “hyperlink” which is another word for hypertext.) Overall, it’s really uninteresting to look at.

This is where CSS comes in. CSS stands for Cascading Style Sheets, and it’s that middle word we care about: Style. Essentially, CSS creates the colors, fonts, layouts, and almost everything in a website that you care about. The fact that the text you are reading now exists at all is because of HTML, but the fact that the text uses the font Merriweather is because of CSS.

All HTML is supposed to do is tell the computer what stuff is: what part of the webpage is a heading, or body text, or an image, etc. CSS is the thing that makes all of that visually interesting: for example, it tells the computer that the headings should be blue, the body text should use a serif font, and the images should be on the right-hand side.

CSS is actually the reason that wireframes exist. You don’t program a wireframe, you draw it, and the reason is that wireframes don’t exist for the benefit of computers. Wireframes are planning tools that exist for the benefit of humans. Computers already have something to tell them how a webpage should be structured without CSS: it’s called HTML. But a human needs a picture to know that, because humans think in pictures, not code.

You now understand a good third or so of how the internet works. HTML creates the website structure by telling the computer what stuff is. CSS styles that structure into something aesthetically pleasing to humans. Before we move on, let’s dip our toes into the Miscellaneous Things bucket, otherwise known as programming languages.

You already know the most important thing about programming languages: they do stuff. And essentially, they do two things: they perform actions, and they make decisions. (Frequently they do both.) An example of an action is changing the color of an icon. An example of a decision is figuring out which browser the user is viewing the page on. An example of doing both is changing the color of an icon depending on the user’s browser.

The above examples can be done with JavaScript, which is probably the most popular programming language used on the web. JavaScript is also frequently used in the creation of navigation menus, login forms, and various site-enhancing animations.

As a side note, it’s important to make the distinction between the actual, visible piece of the webpage—the buttons, links, input fields, etc.—which are created using HTML and CSS like any other visible website piece, and the decisions and actions that are attached to those visible website pieces—the action to be taken when the button is clicked, when the link is hovered over, when the input field is typed into, etc.—which are created using JavaScript. These are separate components of the webpage.

Here’s another, slightly more complicated programming language that’s frequently attached to websites: SQL (pronounced “sequel”). SQL stands for Structured Query Language, and yet again, the middle word is important: Query. Essentially, a query is a request for information. Here’s an example. When you log in to a website, you type your login information into the input fields and hit the submit button. When you do that, the server (the electronic place where your data is stored) is asked by the webpage for the login data. The answer to that question is fetched by SQL.

Fetched from where? Well, on the server, the place where the data is stored is called a database. The database is built, managed, and queried with SQL. When a new user creates an account, their login information is stored in the database, and whenever they log in again, the information they typed into the input fields is checked against the data stored in the database. All of this happens with SQL.

Everything we’ve talked about on the web so far—HTML, CSS, Javascript—happens “client side”, aka, on the user’s browser. SQL, by contrast, happens “server side”, aka, on the server where the website data is located. Client side processing happens where it does because the experience is different for each user, depending on the size of their browser window, what type of browser they’re using, etc. Server side processing happens where it does because the data is collected from a huge number of different users, so it makes the most sense for the resulting gigantic amount of data to be stored in one centralized location.

Here is the major takeaway: Computers think dramatically differently than humans. HTML is the basic structure of a webpage from a computer’s point of view. A wireframe is the basic structure of a webpage from a human’s point of view. People who program computers need a foot in both doors: obviously, they think like humans, but they also need to understand how to think like a computer. Computers don’t speak English, computers speak code, and if you want a computer to do what you want, you had better be able to talk to it in its native tongue.

Search Engine Optimization

Now that you generally know how the web is structured, let’s talk about a surprisingly little-understood but incredibly crucial aspect: search engine optimization, or SEO.

If you’re reading this, I’m going to presume you know what a search engine is. What you probably don’t know, though, is how exactly search engines decide what results go first. When you search for something on Google, you see results in a certain order, but what algorithm generates that order?

The answer is constantly changing for two reasons. First, as soon as companies figure out what the criteria are for higher search result placement, they capitalize on it like crazy, because higher search result placement leads to more customers. (The process of doing this is SEO.) Second, it’s in Google’s best interests for its algorithm to promote the kinds of search results that people actually want to see. If Google’s customers’ criteria for what makes a good search result is different from the kinds of results Google’s algorithm actually generates, the results are skewed in a direction that isn’t beneficial to the customers, and they get mad.

So ideally, if Google makes a good algorithm, the companies will actively try to make their websites better in order to get higher search result placement.

As a side note before I get into the rest of this, one thing a lot of non-techie people don’t realize is that when they search something, there are some results—typically the top ones—that are paid ads. People have paid a certain amount of money to have their product/service shown whenever that keyword is searched. Frequently these are labeled “AD”, but frequently this label is inconspicuous or otherwise difficult to see. In this section, I’m talking about “organic” or “free” top results, not results that are at the top because somebody paid for them to be there.

I don’t know the whole of the algorithm Google uses, since it’s obviously a closely-guarded secret, but here are some of the well-known portions of it that are commonly used by companies for SEO.

  • Improving page load time. Visitors to a site really hate having to wait a long time for a page to load, so search engines put websites that load quickly higher in their rankings.
  • Having other websites linking to yours. This was a much bigger thing ten years ago, but it’s still a part of the algorithm. Essentially, if a good number of other websites link to yours, then the people posting on those other sites probably think your content/product is good, so search engines put your website a little higher. The reason this is a smaller component of the search engine algorithm is it’s really easy to cheat. Back when this was a larger portion of the algorithm, companies would create a ton of small sites that linked liberally to their main site.
  • Visitors click on your page, stay on your page longer, and/or visit other pages on your site. If you can get, and more importantly keep, your visitors, your page is probably giving them what they want. The ranking in search engines for these things is as follows:
    1. The user clicks on the page, spends a decent amount of time there, and proceeds to navigate around on the rest of the site.
    2. The user clicks the page and spends a decent amount of time there.
    3. The user doesn’t click the page.
    4. The user clicks the page, but clicks away almost immediately.

That last one might seem strange. Shouldn’t those last two be in the opposite order? No, and here’s why. If the user doesn’t click the page at all, they may think “no, that’s not what I want”, or they may have just not noticed it. By contrast, if the user clicks the page and then immediately clicks back, the search engine can be reasonably sure that the user thought “no, that’s not what I want”. The difference is between a pretty certain “no”, and a merely possible “no”, hence the ranking.

  • The page uses words/phrases contained in the user’s search. In the 00s, this actually used to be almost the only method of SEO. The reason this changed was that, like my second point above, it is very easy to cheat. Companies would create a ton of webpages on their site that came very close to spamming a particular keyword, while still looking enough like a genuine article to fool a search engine. (Some of the first paid work I ever did was working freelance writing articles like these; I remember writing 500-word articles on black mesh, swimming goggles, and other miscellaneous junk.) However, due to its importance in determining a good search result given how search engines fundamentally work, this remains a pretty large portion of modern SEO. They’ve gotten around companies doing the 00s-SEO by making “stuffing”, or the overuse of keywords, a penalized practice.
  • Search engines can move easily through the pages to find what they need. This one is kind of blatant self-interest on behalf of the search engines, but it still makes a lot of sense. Search engines have a ridiculous amount of internet to “crawl” through (that is the technical term, I’m not kidding), and they want to show their users their search results as quickly as technologically possible, so they prioritize pages that are easy for search engines to find information in.
  • The site works well on mobile. Nowadays, a lot of people view webpages on their mobile phones, not just on desktop. However, mobile-enabling a website is hard (trust me, I know). So, to incentivize developers to do it, search engines give heavy penalties to sites that don’t have good and usable mobile versions.

These are just some of the most crucial and important ones off the top of my head, but there are a huge number of other factors. For further reading, see this insightful SEO Periodic Table.

That’s all for right now! I will probably update this list whenever I find another tech thing that somebody doesn’t understand. If there’s a tech thing that you’ve been hearing about but don’t get, absolutely post it in the comments: I’d love to hear from you and update this post accordingly.