IndyWatch Education Feed Archiver

Go Back:30 Days | 7 Days | 2 Days | 1 Day

IndyWatch Education Feed Today.

Go Forward:1 Day | 2 Days | 7 Days | 30 Days

IndyWatch Education Feed was generated at Community Resources IndyWatch.

Tuesday, 09 October


How to stay motivated when learning to code (10 actionable tips!) - Medium

Does this story sound familiar?

Youve decided to learn to code! Filled with excitement at finding a new career, you quickly sign up for a Udemy course and register at freeCodeCamp.

Feeling optimistic and eager, you sit down and start going through the material that evening.

In the next several weeks, you fall into a pattern of studying coding till late at night, then waking up early the next morning to go to work. But youre starting to get confused by some of the concepts, and there isnt anyone to ask for help.

Youve sacrificed your free time, and havent watched TV to unwind in a while. Also, having to miss nights out with friends sucks.

After a couple of months, all the late nights and lack of sleep are starting to weigh down on you. You bitterly come to the realization that you wont be anywhere near landing a new job in 6 months. The thought is incredibly discouraging.

Finally, you decide to take a break. Youre feeling burned out and frankly exhausted. That break extends out for further months.

Later that year, you realize you havent cracked open your tutorial for a really long time. Sighing, you shove the thought of someday having a job you love into the back of your mind.

Maybe next year.

Staying motivated while coding

Is this story similar to your own? If youre trying to teach yourself how to code, you are probably pretty familiar with the struggles in the story.

Learning coding or any skill on your own is way different from being in a classroom with a teacher. You dont have mandatory classes, tests, grades, or the fear of failing to keep yourself motivated.

When youre learning to code by yourself, you have to generate your own motivation.

So how can you accomplish this? How can you make sure that you keep learning, and dont give up?

Its tough, but it is possible. This article will share some tips and strategies that you can use to stay motivated when learning to code.

Heres a quick outline of what well be going over:

  1. Have an end goal in mind.
  2. Be realistic about your goals.
  3. Choose consistency over speed.
  4. Build up your willpower muscle.
  5. Avoid burnout and get rest.
  6. Dont let impostor syndrome get you down.
  7. Find a community of peers.
  8. Get involved with local meetups.
  9. Dont compare yourself to others.
  10. Stay curious and keep it fun!

Hope you find these tips helpful!

#1: Have an end goal in mind.

This might seem obvious, but have a concrete goal in mind when youre starting out. Take a few minutes to really think about what your #1 goal is. Whats the most important part to you?

It could be to find a full-time job as a web developer so...


How to teach programming to teenagers - Medium

Its not all about Data Structures and Algorithms

Photo by Nick Youngson

In the past, many enthusiastic parents have approached me and asked me how I learned to code in the beginningmainly with the interest in finding ways to help their children how to code. And every time, I didnt have a clear answer for them, because I learned to code at a much later age than most of the children of these parents. In the interest of helping these parents, I also tried to find resources that are made to help the children learn to code.

I discovered that there are a lot of resources help K-6 students learn how to code. Some examples include Scratch and the Hour of Code in which are quite useful for someone new to get acquainted with programming.

Through these platforms, students write simple programs that make graphical creatures move or build simple games and learn the basic tools of programmingsuch as loops and conditionalswhile building useful problem-solving skills. The major strength of these platforms is the visual feedback from the platform, which really helps the students stay constantly engaged with the curriculum and the exercises.

However, teaching programming to teenagers over the 6th grade is a completely different beast. This article shows that over 95% of teenagers today have access to smartphones. So, the visual feedback from Scratch or no longer wows them. In fact, I discovered that the teenagers actually find them quite mundane and childish.

Instead, teenagers want to build or do something REAL that they can showcase. Such as building and launching a real iPhone app or their own website or hacking into some system. But how can you get someone who just finished a set of Scratch exercises to building an iPhone app, while getting them constantly engaged to finish it?

So, I wanted to share my experiences in teaching programming to 4 teenagers over the course of two years. The students started out having a different range of programming skills, personalities, and expectations. Therefore, to keep everyone engaged, I had to go through various trials to find the teaching materials that worked for everyone.

The main goal of this article is to share what I learned and the trials that were successful, in the hopes of helping other teenagers learn to love programming.

Teenagers have High Expectations

I learned that teenagers absorb new technology like dry sponges. While adults may be quite okay with being a technically bit out-of-date, teenagers bet their lives on being cool and following the lat...


If you want to talk about Accessibility, then we need to talk about Readability issues. - Medium

Photo by Callum Shaw on Unsplash

Before I became a web developer, I was a college professor, and my major during my doctoral program was language and literacy acquisition. Thats a technical way of saying I studied how we learn to read and write. I worked with struggling readers of all ages, specifically in middle school but adults as well.

Did you know that the average reading level of adults living in the United States is between 7th and 8th grade, middle school level? Its a sad fact. Further, people prefer to read about two grade levels below their reading level because its more comfortable.

When it comes to technical content, a persons reading level dramatically lowers. They just cant comprehend the unfamiliar technical vocabulary, complex sentence structure, and buzzwords that have no context to them.

This is of critical importance for the content of whatever websites you are building. Your About section, FAQs, and Directions are generally written by members of a team that have a strong educational background, have a reading level between a high school and college level, and have substantial writing skills. In other words, what you are writing might not be comprehendible by your audience.

When it comes to accessibility, you simply must be checking the readability of everything you want your audience to read and comprehend. And this is important to keep in mind for both native English speakers and non-native English speakers alike.

To illustrate this problem, I want to share with you an experience I had in the spring of this year. I volunteered to help a fabulous nonprofit organization, Bank on Atlanta, build their website (working on Phase 2 now). Their goal is to help low-income, low-literacy citizens learn about financial literacy, predatory lending, and safely securing their money.

The websites goal is to display key information since participants would be working directly with trained counselors. This is a link to Phase 1 of the website where the organization is described (embedded below). Take a minute and read this description. As you read, make a guess at the grade level of this passage.

Phase 1 Description

The Flesch Reading Ease Score and Flesch-Kincaid Grade Level

While there are many algorithms out there to assess readability, the...

Monday, 08 October


There is a magic money tree Education, Economy and Society

  Seems a bit silly.  Or is it?  Modern Monetary Theory reminds us that governments of countries  that have their own currencies and  floating exchange rates (like in the UK),  by implication,  can never run out of money or have to be dependent on taxation revenue and private borrowing to finance their activities. In other Continue reading There is a magic money tree


Is a coding bootcamp something for you? - Medium

Is a Coding Bootcamp something for you?

Coding bootcamps popularity is growing. It sounds like a perfect idea to fast-forward your career. But is it really something for you?

Just a couple of years back it was perfectly normal to choose a degree and then build a career in that same field until you retired. Competencies lived separately: the IT people did the coding, the business people focused on the entrepreneurial aspects, and the accountants ran the books.

But somewhere along the way things started to change. Technical literacy became a necessity in many roles and fields of the global market. Think hospitality (AirBnb), transportation (Uber), publishing (Amazon). All these companies are increasingly dependent on software and their online services. Enrolling into a coding bootcamp might sound like a great idea to get equipped with these precious tech skills.

But lets make one thing clear: bootcamps are not for everyone. If somebody tells you otherwise they probably dont know a lot about bootcamps or are only focused on getting your money.

For me, doing Le Wagon was one of the best and most absolutely life-changing experiences Ive had so far. The vast majority of the students I met there left more than satisfied. But I have also seen people regretting doing their bootcamp or not being as successful as they imaginedboth back then when I was a student and afterwards when I taught myself. A lot of these cases resulted from a wrong attitude or unrealistic expectations and could have been easily avoided.

So before you quit your job or ask your parents for a loan, heres a set of questions you should consider.

Do you like to code?

This one is important, even if the bootcamp you are considering accepts complete beginners. You havent written a single line of code in your life? Take an online course on Codecademy, Coursera or freeCodeCamp. They all have great resources for beginners and are completely free. If you get too stuck you can use their forums to ask for help. But try not to use those forums too often: being stuck and trying to figure the problem out yourself is a part of the process.

You finished your first course and still think its fun? Thats a great place to start.



How to surprise your apps users by hiding Easter eggs in the console - Medium

too much logging to the console

I love console.logging(stuff).

I do it throughout my apps, for debugging purposes and feature building purposes, and just for the sheer hell of it. Its fun to log stuff to the console.

I even use console.warn() and console.error(), and console.table() if Im feeling frisky.

I like all the pretty colors they make in my console, and sometimes you want some messages to stand out more than others.

But I realized while looking at my story generator app WordNerds yesterday than I was logging to the console in production mode.

Uh-oh spaghetti-ohs.

Thats a no-no. It could slow down the code unnecessarily, and more importantly, it could compromise my users email addresses! I was logging all my users usernames and email addresses. Not cool! Their passwords are encrypted of course but still, no bueno. I wouldnt want any bad guys getting a a bunch of my users email addresses and spamming them crapola.

Getting Rid of Console Logs In Production Mode

Fixing it turned out to be easy. Sure, I could have gone through the codebase and commented out all my console.logs(), but that would be a pain, and some of them are serving important purposes in development mode.

Luckily theres an easier, better way.

First I consulted some of the solutions to this problem listed on StackFlow, and then ultimately went with the first solution listed on this blog post.

Solution via

As some of the comments mentioned when someone listed this as a solution the the problem: Thats a hack. Your wasting computation in production

Thats a hack.

Good debate! I wasnt too worried about calling an empty function several times and wasting some computation in production, so I went with this solution, because its easy to implement and solves my problem.

Heres how I did it, in the src/index.js file:

src/index.js file

Of course I could do this in any file, like the App component, or my StoryContainer component. Anywhere as long as it was before any co...


How to stay focused - distraction-free programming in a connected world - Medium

I, like many programmers (I assume), struggle with focusing and staying on task. Every hour of every day it seems I am being bombarded with texts, emails, messages, tweets, and in-person interruptions. Not to mention all of the blog sites I like to check and the new videos from my favorite YouTubers.

This has become a greater challenge as I consult, travel, and work remotely frequently. Here are some of the ways I have been able to maximize my output vs time efficiency and minimize interruptions.

App/Website Blockers

Staying focused while working on the computer is never easy, but it has gotten easier for me by using app and website blocker programs. Right now, I use a Mac for most of my work, and I also travel with one. Thus, some of the app specific information here is for Mac users. I also want to note here that desktop apps are better than browser plugins because they block across all browsers and desktop apps as well (plus if you are an app developer, you probably have enough plugins in your browser already).

So here are a few apps to help keep you focused:

  • Focus (Mac) - This is the app that I currently use which is Mac only and lets me block any website (on any browser) along with desktop applications. There are also options for me to write scripts inside the app to customize it. Another reason I love this app is that its one of the few out there that has a pretty good privacy policy.
  • Cold Turkey (Windows) - I have not personally used this one, but it comes recommended and they seem to have a pretty good privacy policy - they use Matomo for analytics instead of Google, and they are very clear about how data is stored and used.
  • Freedom (cross-platform) - Please do not use Freedom without reading their privacy policy! They admit in their sharing > general use section that they sell personal information to advertisers for profit. And yet, so many people recommend and use this service. Yeah, no thanks.
  • Browser Plugins - if you are using Chrome, there are lots of good options like Stay Focused which I used to use before switching to Firefox as my main browser. Firefox doesnt seem to have anything comparable (Leech Block hasnt worked for me, but some people like it) though I dont really need this type of plugin while Im using my desktop app. I do use exclusively browser-based plugins for Linux though, so I will try to find a better F...


These are the reasons Software Engineers dont leave their jobs - Medium

Please note: This article is my own opinion and not reflective of any companys views.

Tech companies are always trying to figure out how to keep their employees happy in their jobs. Its no easy feat though, and the people in tech Ive spoken to stay at a particular job for around 18 months or less on average. Whenever I ask any of them what is the reason, it usually stems from the same problems.

Here are six reasons people actually stay at their jobs that I feel matter. Of course, salary is important but it doesnt stand on its own feet without the following.

1. Getting along with the manager

They say people dont leave their jobs, they leave their managers. This couldnt be more true. You should be able to relate to your manager, see eye-to-eye and feel like you can trust one-another. Your manager should stick up for you and you should feel like they are on your side. They should speak to you with respect, dignity and not order you around, abuse their level of control or insult you. Some of the best managers Ive had are also great friends of mine to this day.

Management is probably one of the hardest things to do. When I say its hard, I mean its hard if you want to be considered a good manager. You need to work extremely hard for your team, manage expectations and keep morale high Its not for everyone.

On my first day, my manager introduced me to everyone, organized a team lunch and we all clinked drinks with the words, Welcome to the team, Shaun. I have weekly one-to-one meetings to see how I am doing if I have any problems, and always feel reassured about the work I do. These are the little things that make a difference.

2. My ideas and contributions matter

This may have more to do with the fact that I am in a senior position now, but I feel like the ideas others members on the team and I actually push for do make their way into our applications or our workflow. It may be something to do with the company not being a large corporation, which generally tends to contain a lot of strict regulation for change.

A lot of people get fed up with the fact that they cannot initiate change in a company. Young minds bring fresh ideas that should be embraced, but most of the time theyre not, and that is a shame. When a company has a set way of doing things, its too risky for them to change because everyone is too comfortable. Companies have to take risks to move forward and innovate.

When young minds feel like they cannot make a difference they lose their passion and drive for that company. Then they decide to find somewhere that will allow them to inn...


How to unit test your first Vue.js component - Medium

Photo by Jefferson Santos on Unsplash.

In Build Your First Vue.js Component we made a star rating component. Weve covered many fundamental concepts to help you create more complex Vue.js components.

Yet, theres one crucial point you need to build bulletproof components you can use in production: unit testing.

Why unit test a component?

Unit tests are a crucial part of continuous integration. They make your code a lot more reliable by focusing on small, isolated entities and making sure these always behave as expected. You can confidently iterate on your project without fear of breaking things.

Unit tests arent limited to scripts. Anything we can test in isolation is unit testable, as long as you respect a few good practices. These practices include single-responsibility, predictability, and loose coupling.

As reusable entities of our app, Vue.js components are great candidates for unit testing. Well test the one we made as a single unit with various inputs and user interactions, and make sure it always behaves as we expect.

Before we start

A few things have changed since the initial tutorial. Vue CLI 3 was released. Vue Test Utilsthe official Vue.js unit testing utility libraryhas matured to beta version. In the first tutorial, we used webpack-simple, a prototyping template that doesnt include testing features. For these reasons, the simplest thing to do is to wipe the slate clean and migrate the project from the tutorial to a more recent Vue.js install.

I re-created the project from the first tutorial so you can download it directly from GitHub. Then, navigate to the unzipped directory and install dependencies.

Note: make sure you install Node.js before going further:

cd path/to/my/project npm install

Then, run the project:

npm run serve

Vue Test Utils and Jest

For this tutorial, well use Vue Test Utils, the official Vue.js testing toolkit, along with Jest, a JavaScript...


How to decide on the best technology for your website - Medium

You know how your website is going to look and have a good idea about the content structure. But no one wants to maintain a set of static pages, right? Lets take a look at how to make your website dynamic and easily adjustable, so that with every change, you do not need to touch the code and the websites implementation.

But where do we start?

Do we need to install any tools? Is it a good idea to use JavaScript or stick with server-side rendering using MVC or an all-in-one CMS? I will explain how to bring life into your websites and prepare them for the future.

So you want to build a modern website. A website that is fast, secure, looks good and provides the best user experience. The word modern is key here, as it also relates to our hectic time. Everyone is busy, our bosses want us to handle 120% of our assigned work, and there is hardly a half-hour to enjoy lunch every day. Therefore, creating the whole website functionality from scratch does not fit our scenario. The objective is to get it up and running as fast as possible and share it with the whole world, preferably today.

An all-in-one server-side solution

Using an all-in-one solution such as a content management system (CMS) will ensure your website is up and running quickly. At least its first version. Installing it and accessing the administration interface for the first time could take you just a few minutes if you already have the development environment ready (otherwise add a few hours for the installation).

Once you log in, you can configure the website, define the URL policy and then start creating templates and layouts based on the design you picked. Getting the templates and content into the CMS can be time consuming. Namely you need to:

  • learn the concept of templates of each particular CMS (from documentation or e-learning)
  • apply the concept on your design
  • learn best practices about storing content in each CMS
  • fine-tune the website to fit your expectations

All this can be done very quickly if you are familiar with the CMS. But your first few websites will probably not be candidates for the Site of the Year. 

When I used CMS systems in the past, sooner or later I always ended up creating custom controls (that is, custom code), as the HTML output of standard controls was not sufficient or directly went against new industry standards, like Accelerated Mobile Pages. I consider this the biggest caveat of CMS systems, they limit you in various ways as they position themselves as a master engine of your website. I always found myself solving small tasks 80% of the time.

Another problem that I encountered almost every time was during deployment. First deployment is easy, you just put everything on a remote FTP and restore the database on your...

IndyWatch Education Feed Archiver

Go Back:30 Days | 7 Days | 2 Days | 1 Day

IndyWatch Education Feed Today.

Go Forward:1 Day | 2 Days | 7 Days | 30 Days

IndyWatch Education Feed was generated at Community Resources IndyWatch.

Resource generated at IndyWatch using aliasfeed and rawdog