Showing posts with label goals. Show all posts
Showing posts with label goals. Show all posts

Saturday, 28 October 2017

At The End Of Basic Front-End Dev Projects: My Current Issues w/FreeCodeCamp

Up until last week, FreeCodeCamp had been like a dream come true. It had brilliant small, measurable and achievable goals in order to help keep momentum in programming learning, even if you only had the energy for the smallest commitment in the day. It reminded me of the feeling I got when I very first coded with Codecademy: how simple it was to begin, as well as continue, straight from the homepage.



However, I have come to the end of the "Basic Front-End Development" block... And I've reached a sudden roadblock. Technically, yes, we should know everything we have been taught up to that point. I have a reasonable idea of how to use <div>'s and <div class>'s in order to group elements together. I even figured out, through my own research, the one thing I had always wondered... How to create a neat menu along the top, that also follows you as you scroll the page (it turns out it's just an unordered list, with some extra CSS!).

However, the biggest stumbling block was creating my own portfolio page. The "Tribute" project was much easier, as it was easy enough to create an "Ironic" page that incorporated the lyrics of Tenacious D's tribute. I found I completed a rudimentary page pretty quickly on my first attempt, without looking anything up.

Then I got to the Portfolio project. And, I put my hands up (as I increasingly regularly do): the biggest obstacle to my learning is that I am a top-tier perfectionist. If I know exactly what I want, I'll end up creating ridiculous amounts of work for myself to incorporate even the smallest, unimportant element... Even if it means I make no progress with the actual page.

This can be a helpful and important skill; as I mentioned, I have now learned something about creating navigation bars which, even weeks after first learning it, hasn't left me. The problem came when I really wanted that bar to contain a "now playing" section, displaying my currently playing Last.FM track.

In a nutshell, the biggest problem in creating a portfolio for myself is my own ridiculous set of standards. The task was significantly easier when I forced myself into the easier task of emulating my brother's stylish website... But even then, I came up with problems like trying to get a navigation bar centred, and the problems that developed with page colouring when I attempted that.

More than that, I feel as if FreeCodeCamp went from being a course that was very easy to follow, with gamification seemingly ingrained into its soul, to a task where I was suddenly thrown at the deep end. Again, technically this is stuff I have just been taught. But I feel the course could have benefited from another guided example for creating an entire web page within its learning environment (maybe with fewer hints and cues) before asking us to create our own site.

The thing is... I do have a rudimentary Portfolio page created from this as well. And I have made the decision just to submit it; as I know doing so will get me out of this rut, and looking at the continuing course, it goes back to the format of small, achievable tasks.  I intend to go back and improve it as I become more knowledgeable, as well as e-mail/submit this in some way to help improve the course (hell, I would even be willing to help create the learning materials for it).

Anyway, here I present https://glitchwalker.github.io (oh, yeah, I used GitHub instead of the site they suggested; as I already have it set up to update game mod projects, and I preferred the workflow of having the entire site working and editable on my own computer already).

Free Code Camp is free to use and is available at https://www.freecodecamp.org. The learning materials are also open source, and free to use within any setting.

Friday, 6 October 2017

The Big Problem with Gamification, GTD, Task Lists, Motivation...

Task lists are great. There's an abundance of research that shows even ticking a box for the smallest of goals fires off all kinds of chemicals that make you feel good and encourage you to complete (and create!) more tasks than you can possibly imagine. Meanwhile, sites like DuoLingo and KhanAcademy keep a tally of how many days in a row you have engaged with the sites, reinforcing ongoing interaction with them and keeping the consistency of visits up (resulting in more effective learning).



The biggest problem is when that consistency is broken. From this week, I'm going to be involved in work away from home potentially two days a week. Having come back from my first week of this new routine, I have found my previously unblemmished record of learning now replaced with an empty hole for one of the days.

Now, DuoLingo offered a cheeky solution for keeping my streak intact by paying nearly £3 to restore it. I understand they are ultimately a business, and to be fair it isn't too different to those apps that lock away your internet so it isn't a distraction; unlocking it either at a fixed time or by paying a fee to the company. However these ultimately frustrate me, as I'd rather pay money to a charity for missing my goals than paying the priviledge for a company to reduce my services.

On top of that, it is only a solution for my use of that one site... It doesn't fix my record for sites like TypingClub or KhanAcademy (although these two visualise your learning in a better way, either as an average of a week like TypingClub or showing your stats for a month as well as daily, like Khan).

I therefore wanted to announce a new project tentatively called Goalst. It is an app that aims to do one thing: enable you to focus on a single preset task consistently every day... Or a one-task task-list. It specifically needs to be the easiest possible task you can think of.

This is for two reasons: firstly, and I can say this from experience, in the depths of depression sometimes even getting dressed, getting washed, or brushing your teeth can be forgotten. For the longest time my "Goalst" has been simply to brush my teeth. Which sounds ridiculous. But, by being the smallest possible goal I can think of, it's incredibly easy to convince myself to do and earn myself a success. It is one bonus to my health and wellbeing that, at times, would not otherwise be achieved if it wasn't for the sake of ticking a box.

The second thing is that single act of ticking a box, regardless of how easy, starts that chain reaction of chemicals I mentioned earlier. It motivates you to add more tasks, and can kickstart you to keep your consistency with more difficult tasks. For the average person it's a catalyst to keep to your other goals... To someone in a mental health crisis, I think the benefits are also obvious.

The aim of the app will be solely on that one task... It will specifically not offer any kind of integration with other app systems, or more than one task. The whole point is anyone can slot it into whatever organisation system (if any) a person has, so a person can open a clean interface with nothing but a tickbox and no horrifying stack of tasks. I might include features to keep a streak or show stats for the month, as well as a "start anew" button (for people who haven't used it in a while because they haven't needed it, and want to start afresh). I may even include some way to push the completed task to other task list sites, but the point isn't to replace these sites nor to rely on them as part of your system; it is meant for periods of "Crisis" in your life (whether it is extreme anxierty, or even procrastination... Whatever a crisis in not meeting your life goals is to you).

Anyway. I'll start coming up with designs... I understand the logic to code it, but still need to learn more on how to code an interface (in Python).