What happened to digital forums?

Facebook lets me connect with real life friends, twitter lets me follow the design industry closely but is full of marketing. Reddit is great, but I just feel there is something lacking that forums used to give me (perhaps Reddit is just to big – don’t get me wrong, I find Reddit very valuable).

I miss online forums, online forums seem to be dying. Forums gave me a sense of community, free of drama and marketing. In my teenage years I spent a lot of time on online forums to do with my interests. I used to enjoy having a digital presence, that had nothing to do with my real life self.

Facebook does not particularly interest me because of this, and it seems to be a place for people to vent the drama in their lives, which I find immensely irritating, its not that I do not care, its more that I would rather be part of that persons life, and find out about them in the physical world, or via direct communication. I do use Facebook however, for two reasons: direct messaging and organising events.

Mainly I used to be very into making forum signatures on sites like gamerenders.com. I loved these little signatures you could make part of your own identity. Gamerenders even has a currency that you can use to purchase signatures from more design skilled members. I was so obsessed by creating signatures, that they even somewhat lead to a career in design, by interesting me in the visual side of it.

I read an article today, that discussed if online forums are dying. It made me reflect on what forums gave me that I don’t feel I have today:

A sense of an anonymous digital community

Forums allowed close communities to form, where members knew and helped each other. Reddit may do this to a degree, but I feel I do not get the sense of community from it, in the end Reddit itself is quite controlled, despite the content not being so.

A sense of community achievement

Forums were not money making machines, they were run by the community for the community. They were moderated and kept on topic by volunteer community moderators. They have a sense that the community together had built something.

A lot of the forums I used to be part of, are now dead. The community I knew and the digital friends I made no longer exist, or I have no way of finding them. Some still do exist that I used to use, but they seem to be dying.

I wonder what we will use in 5-10 years time. Perhaps something new entirely that gives us that sense of digital community and achievement, whilst also taking some of the advantages of Reddit, that forums cannot replicate easily (mainly you can get more useful information in less time, due to the up vote system. I strongly feel that sites like Facebook, are often a form of time wasting, and that something social has to be community driven, not driven by a large corporation.

 

Get my latest content on products, design and development by subscribing to my Newsletter. Or connect with me on twitter 

assets_marquee

Pixeltool – a tool for pixel perfect front-end

TL:DR
Problem
Front-end developers not paying close enough attention to detail in designs given to them by a design team.

Solution
A chrome devtools extension (PixelTool) that overlays the designs directly onto their HTML in an easy to use way, that has real time adjusting opacity and positioning which helps result in pixel perfect precision.

Get it here
Github Repository

I recently submitted a new tool (PixelTool) to the chrome extension store. Recently whilst working closely with front-end developers, I have been looking for ways to improve how close their work is to the designs I give them. A solution I thought of was to overlay the designs straight onto their HTML. I searched for a tool and found a few. The problem was they got in the way of the interface, and injected controls directly onto the webpage. I decided the best place for this kind of tool was to sit within devtools itself, and only inject the image overlay onto the HTML.

The tool allows a developer to overlay a visual design on to HTML and in real time adjust the opacity and positioning of the image, whilst keeping out of the way in devtools.

I have been trialing this tool with the developers for a week now, and so far it has been very useful. One of the biggest uses of the tool that I had not thought of, was using it to do design reviews of their work. I could use Pixeltool myself to compare their own work very quickly to my own designs, this has saved me a lot of time.

 

My 30 day code challenge – what I learned

I was successful in maintaining progress for the first 3 weeks, but I did not finish the project I wanted to. To be honest, my heart was never really into that project to begin with. I wanted to use it to try out the motivation techniques I have been developing, and despite only going for 3 weeks, I feel I have sufficiently tested these techniques.

The focus of the challenge was to determine two things:

  1. Is a don’t break the chain system motivational?
  2. Will breaking down projects into small 20+ minutes a day see sufficient progress?

I believe the second one still holds true, I found my progress was quite significant and I often exceeded the 20 minutes up to 2 hours. However my feelings on the don’t break the chain system are not as strong. I do believe it is a great way to get started on a project, but it sets you up for failure.

At the three week mark, I moved apartments, the chain broke. Once the chain was broken, it was so easy just to ignore it, it gave me an excuse not to start again.

Imagine this, you have a 300 day chain of everyday doing a bit of work, then one day for some unavoidable reason, you simply cannot do anything on the project. You would feel your chain is broken, and once it is broken you have failed. After failure it is then not very motivating to get started again.

I feel breaking a chain is almost like you are throwing out all the hard work you have put in. Breaking a chain is inevitable and should not be viewed as a bad thing, it is simply a fact of life. Life is chaotic and unpredictable, all we can do is try to maintain a routine as best we can. The result is that I am shifting my perspective away from don’t break the chain to a new kind of motivational strategy which I will be experimenting with in the future. Rather then building a chain that can be broken, you build a wall. Every time slot you spend working on your project you gain a brick, each brick becomes part of the wall. Even if you miss a day, you just miss a brick, but the wall stays strong.

The reason I believe this could be a beneficial way of visualising  progress, is it uses all the time you have worked on a project as a way to help you feel motivated. By seeing the amount of progress and time you have committed on a project it will hopeful help create a sense of intrinsic motivation that encourages you to continue working. Better yet, it encourages you to break your projects down into small ‘bricks’ these bricks are chunks of time, that once done further build your wall, until eventually your wall becomes gigantic. It is much easier to motivate yourself to just sit down for a small period of time and add a ‘brick’ then it is to think about completing the entire project.

I will be testing this idea out on my own at some point in the near future, so stay in touch! If you have any ideas around this topic, I would love to hear! Feel free to tweet me @swaldy.

My 30 day code challenge – week 1

I knew the first week of my code challenge was going to be challenging. It is the point you have to start from nothing and create some progress. For me personally it was also quite tough as I have been quite sick all week. However that is why the minimum amount of effort (20 minutes) a day is so low, it is to account for the difficulties life brings.

The biggest challenge is actually making progress, previously I have spent weeks debating frameworks such as Ruby on Rails vs Mean.js. My new perspective of just starting work in small increments and making decisions on the fly is proving to be very successful for me.

The whole idea here is not to treat a project as a big thing, it is to treat it as a series of small increments. This is the kind of perspective that allows you to actually make progress, and eventually finish a project.

Normally a busy week like this, where I have also been sick I would make zero progress or any form of side project. I would be lucky to do anything but collapse on the couch when I get home from work. I am pleased to say despite all this it has been a fairly successful week, in that I actually have a project up and running.

You can view the Github repository here.
You can also view the live project which I will update every week here: UX Toolkit

Week 1

The focus in week one was to get up and running as quickly as possible. I did not want to spend a lot of time fiddling with frameworks and deciding on a tech stack. I decided to just build a frontend to start with, for this I used the https://developers.google.com/web/starter-kit/ as a basis. It is a great tool that is easily customisable and provides some really useful live reload and gulp workflows out of the box and has reduced significantly the amount of boilerplate code I need to write.

I spent day one and two integrating AngularJS my chosen front-end framework and structuring the application how I wanted. This was about 2 hours work.

Day three I was quite unwell, I managed to get the 20 minutes done however, and this was spent adjusting the grid layout.

Day four, five and six I added the functionality to tag individual tools and filter them by category, as well as a page for each tool.

Day seven I started doing some design work in photoshop on how the site will look, as right now it is basically just using googles web starter kit of the look and feel.

Week 2

In week two I hope to look more at the design of the website, animate the change of categories, work at sourcing content and doing some UX design around the purpose of the site as I want to validate my ideas as early as possible.

As I go I will be sharing information about the tools, code and design methodologies I have used in this project. To follow me on the journey subscribe to my newsletter, or follow me on twitter: 

.

Or better yet start your own #30daysofcode code challenge project.

Start my own code project NOW! – My 30 day challenge

Recently I wrote an article on why coders and designers need to start creating now. I provided a means to do this, with a methodology called don’t break the chain. As part of my testing for this method I am going to implement it for myself, with a side project. I too currently work full time, and struggle to complete projects outside of my work.

The result is I am going to be starting a 30 day 20+ minutes of work code challenge. I am going to be building a website, that is useful for UX Designers as a kind of toolkit of methods.

I will be following these rules:

  1. Each day for at least 20 minutes, I will be either designing or writing code for the website.
  2. After 30 days I must make my website live.
  3. The code will be open source and on Github and I must make a commit every single day, however small. This is to prevent me just focusing on the design and not actual implementation.
  4. I will post an update on how I am going every week.

This challenge will be a great chance for me to see how well my theories work, as well as how I need to adapt them. It is also a great opportunity for me to learn and build a useful product!

Why 30 days?

Because I simple want to set an achievable goal to get me started. If I increase the days the chances of me failing are increased significantly, fear of failure will prevent me from actually starting. However this is not to say I can’t extend the 30 days afterwards, it is just a starting point.

The code/design challenge starts today! Subscribe to my newsletter and follow along, or even better start your own code/design project now and let me know how you go!

5 Reasons you NEVER finish code projects and tips to improve

Get your code projects finished by avoiding the common mistakes below:

1 You have too many code projects

You have a lot of good ideas and you try to tackle them all at once. Having multiple projects going at the same time means that you end up doing small amounts of work on each but never actually complete any one project or even make significant progress. Prioritise your projects and focus on one at a time. Set a short-term goal for the one project and meet it.

This does not mean you can only ever have one project; over a period of time you can have many, but only focus on one at any given time. This means that as soon as the project hits a tough point you must pursue it and meet your short-term goal – when otherwise you would probably find yourself taking a break and going to another (easier) project.

2 You try to do large chunks in one go

It’s tempting to stay up all night working on a project. Yes you make significant progress over one night, but it’s bad for motivation. What  happens when you get busy, and you have to skip a weekend of code work? Suddenly you may have gone two weeks without working on your project, this makes it extremely difficult to get going again.

If you break your projects into bite sized chunks and take them on in small increments, it is motivating. Consistently you will begin to see progress on an on going basis, this will motivate you to keep pushing forward.

What happens here is we feel motivated when we see progress. This is extremely important. As soon as we feel we are not making progress on a project we are very likely to stop working on it entirely. Working consistently everyday for a small chunk of time, beats working on a project for large chunks of time every now and then.

3 You don’t track your progress

Progress is motivating and can help to keep you working toward your goal when you hit a rough patch. This is because you can see how much you have accomplished. When all you see is how far you have to go, without recognising the achievement of how far you come, it can be easy to get dissuaded to continue. Break your projects down into small attainable goals and meet them.

In a recent article I covered motivation and suggested a technique called ‘Don’t break the chain’ that encouraged breaking down the time you work on a project to small chunks of time per day. Marking these days off on a calendar builds a chain of crosses, once you have a chain your goal is simply not to break it. This chain is motivating, you can look back and see the consistent progress you have made.

4 You start too big

Yes you can have massive, awesome and world changing ideas. However you cannot build them in one night! You must iterate, and build over time. It is nearly impossible to get started on a world changing project, simply because it is overwhelming.

The solution is simple: get a minimum viable product out their ASAP. It is about getting the minimum required done for the product to function. This allows you to get feedback earlier on your project,  see if it is actually useful and sets a more attainable goal.

This does not just apply to product design! Any project should be structured this way, simply for the fact that it allows you to validate your project early, and actually have a goal that is in reach that you can achieve.

Big targets are hard to reach, small targets are easy. Lots of small targets can result in a big target.

5 You’re a perfectionist

Decide on what your minimum viable product is, set a date and meet it. Don’t wait for it to be perfect. I am telling you right now, that if you want to wait for it to be perfect, IT NEVER WILL BE. No matter how awesome what you are building is, if the world does not see it it is a waste.

Why does the most work always happen before a deadline? Why do you always procrastinate right until you have no choice but to finish the work? At the last minute your thought processes change, it’s no longer about building something perfect, it’s about getting it done. The solution is the same solution I have outlined all throughout this post, break your work and deadlines down into small milestones. This allows you to take advantage of the focus, and progress you get just before a deadline, but multiple times throughout a project. Keep in touch for I will be writing a specific post about breaking down large code projects and its benefits soon.

Now think about your approach to your current and future code projects, and make them achievable!

 

Enjoyed the article? Follow me on Twitter or subscribe to my newsletter.

Start your code projects NOW!

“Talk is cheap. Show me the code.” —Linus Torvalds

 

I believe in a world of open source software. A world where people contribute to projects that they believe in and want to contribute to. How do we make this happen? The answer is simple — people must code.

To start contributing and creating products time must be put in to do so. In order for people to put this time into the work there must be some form of underlying motivation to do so. This motivation must be intrinsic (from inside), not extrinsic (from outside).

The ability to create software equates to turning time and effort into something digitally substantial. Developers have the ability to create products, solve problems, create profit and become something from nothing!

For most people what they create is not up to them. Why are there so many developers in the world who only create what large corporate bodies tell them to? We work in an industry that has so much potential for the mere employee. Why? Because the employee has the ability to create, and the ability to create is the power to reach great potential.

Every coder has a side project. Some have many. It is that unfinished project or brilliant idea that will sky rocket them to riches beyond belief and freedom to build what they desire and have control over their future. It is often simply a matter of finishing said project.

Finishing this project can sometimes be the hardest thing imaginable. This can be a product of lack of time, energy or other commitments. Is it really because of these things? No. What it comes down to is not an issue or time, or the perfect idea, or the perfect audience — it is an issue of motivation.

Examples of behaviours that are the result of extrinsic motivation are: studying because you want a good grade, cleaning your room to avoid being reprimanded by your parents, training for a sport to win a trophy. In each of these examples the behaviour is motivated by the desire to gain the reward or avoid undesirable outcomes.

Intrinsic motivation is behaviour that is displayed because it is personally rewarding — performing an activity for its own sake rather than a desire for a reward. Examples of this are: participating in a sport because you enjoy the activity, or studying because you like the subject. There is an internal force to do an activity for it’s own sake.

External motivation simply does not last; it is strong in the beginning but fades fast. Intrinsic motivation is an underlying force that keeps pushing you.

How do you feed this intrinsic fire? There are many ways to keep on track, one very simply rule is you must track your progress. The ability to see progress towards your goals will keep you motivated and on track.

There is a simple tool that can be done with a wall calendar and a pen, its very easy. Simply decide on a goal, such as I will commit 30 minutes of code to my project everyday. Then everyday you achieve this goal you mark off a day on the calendar. As you manage to continuously commit code each day, you create a chain. Eventually you will look at your calendar and see a series of days that you have worked on your project. This shows progress. It encourages you to not break the chain. This is called a ‘don’t break the chain’ system.

Jerry Seinfield popularised this method, I have tried it, and trust me it works. Give it a go and see if you are more productive.

The time is now to start solving problems and working on your ideas.

Enjoyed the article? Follow me on Twitter or subscribe to my newsletter.