Work Log

Building web apps that change how people behave

Read this first

Building 21st Night

This post outlines my experience building a web-based tool that makes learning complicated information quick and effective. You add information to the system in the form of cards, and the app works out which cards you need to review on what days.

The Problem

Trevor Klee is a private tutor who specialises in helping students prepare for standardised tests, like the GMAT and MCAT. He sometimes uses a Google spreadsheet to compile links of relevant topics for his students. They use the spreadsheet to review the information and then assess their understanding after each link. Depending on their performance, they mark the link for review the next day, in 3 days or a week later. Here is what a spreadsheet looked like in practice.

unnamed.png

The process is tedious, and Trevor wanted a simple application that took care of all the details.

There are existing apps for this, Anki being the most popular...

Continue reading →


3592 hours

Today I worked on the page that lets you edit individual flashcards in the spaced repetition memory app I am working on.

This is where I started.
front.png

The main thing to fix was the tag component in the top right corner. I turned it into a dropdown and populated it with all the existing tags in the category. That way people can see what tags have already been created and they don’t end up creating a bunch of similar tags that should probably all be the same thing.

Screenshot 2019-05-30 at 2.01.18 PM.png

On the answer tab, I started with this…

Screenshot 2019-05-30 at 5.22.01 PM.png

I needed to add tags to each of the inputs and rearrange the layout a bit.

Screenshot 2019-05-30 at 5.20.51 PM.png

Broke a bunch of tests in the process, so there was a lot of time spent fixing tests and regretting writing them. I suppose that’s much better than regretting not writing tests in the first place.

Continue reading →


Projects

Active in the status column means the projects are still active.
Updated projects are active but they have been updated beyond recognition.
Stalled projects never launched, for one reason or another.
R.I.P. are projects that launched, lived their natural life and then got shut down.


Completed Project Description For Status Dec 2018 Cryptominer World Ethereum Collectables Game Sophophilia Studios Active Sep 2018 Vaayu Vision Website for an adventure centre Vaayu Active Jun 2018 PeerPlus Online polling app
Proposal Aditya Sethia Stalled June 2018 Kautilya Books Online bookstore
Proposal Raju Arora Active May 2018 Smartspin App to help homeschool children Saar Shai Active Nov 2017 Realsies Social commitment tracking app Personal Stalled Oct 2017 Employment portal Online job board Eric Schuster Stalled Oct 2017 Path App to bookmark online courses Personal Active ...

Continue reading →


Design Problems in the Blockchain Space

One of the reasons blockchain applications have been notoriously difficult to use is because the industry has been led by engineers whose primary focus has been security.

If the technology is to be more widely adopted then we’re going to have to find a balance between the blockchain’s machine requirements and it’s human needs.

Some things we could do to make blockchain applications more intuitive are to stay away from using jargon, providing guidance while people are using applications, ensuring constant feedback during use, and calling attention to one-way doors.

Staying Away From Jargon

Let’s make sure people don’t have to know the lingo to be able to use our apps. The focus should always be on what something lets you do and not how it works.

The danger here is an oversimplification. When we must communicate something specific and complicated, let’s rely on analogies or concepts...

Continue reading →


An Ode To Hill Charts

Basecamp came out with a new kind of to-do list called a hill chart. This is what they look like.

fwgtELHsiZuaabAtZL2PwA0xspap_retina.jpg

Things on the left are being figured out, anything on the right means it’s being done. Stuff on the far left is vague and need a lot of figuring out while stuff on far right is almost finished.

Every time you do some work, you manually move the task a little further along the line. There no science to it, it’s not automatic, you just ballpark it and move it to where it feels right.

That’s it.

What I love most about the hill chart is that it has turned my workload into a menu. Some days I wake up and feel like figuring things out, other days I just want to get stuff done. Depending on how I feel I can pick a task with just the right consistency for the day.

Sometimes I need a boost so I’ll pick a task on the far right. Finishing stuff that is almost finished makes it feel like I’m...

Continue reading →


I Recommend…

Productivity

  • Workflowy for organising your head.
  • Basecamp for organising stuff in teams.
  • Beeminder for sticking to commitments.
  • Best calculator for OSX Numi.

Work

  • The Creative Class for how to freelance like a pro.
  • Bonsai for invoicing and payments.

Design

  • Monochrome palette builder.
  • Contrast accessibility colour picker for OSX.
  • TinyJPG for image compression.
  • Typeface pairing inspiration:Typewolf.

Development

  • Learn State Machines: Learn how to use finite state machines in javascript applications.
  • Javscript Testing: Learn how to test javascript applications.

Marketing

  • Clickminded is just the best SEO course.

Other

  • Ryan Holiday’s Newsletter for fantastic book recommendations each month.

Continue reading →


Hire Me

“We hired Josh together with a small group of freelancers to build a prototype app for us in a week. They did it! And, we are delighted with the results. Josh was a delight to work with; always cooperative, creative, responsive and technically excellent at his job - went above and beyond. I wouldn’t hesitate to recommend him to anyone.”

Bec Evans & Chris Smith, founders of Prolifiko.

Working with Josh was a great experience. His sense of design, aesthetics and flow of information was amazing. I am very pleased with his work and recommend him very highly.

Raju Arora, Founder of Kautilya Publishing.

Joshua was extremely detail oriented and thorough in this project. I would highly recommend him to anyone wanting a quality developer.”

Eric Schuster, Founder of Fresh Look Web Design.

If you are looking for someone that will listen to your idea, understand what needs to be done, and...

Continue reading →


Now…

  • I am working on spaced-repetition learning application to help students memorise stuff.
  • Working on a project management tool to help small teams make better decisions.
  • I have coded for hours since 3522 hours since I began on Nov 4th 2014.
  • I am taking bookings for late June 2019. Here is more about what it’s like working with me.

If you’d like updates on things, I make I have a monthly(ish) newsletter for you called Business Building Adventures.

View →


A Basic Smart Contract

pragma solidity ^0.4.24
contract Campaign {

    address public owner;
    uint public deadline;
    uint public goal;
    uint public fundsRaised;
    bool public refundsSent;

    event LogContribution(address sender, uint amount);
    event LogRefundsSent(address funder, uint amount);
    event LogWithdrawal(address beneficiary, uint amount);

    struct FunderStruct {
        address funder;
        uint amount;
    }

    FunderStruct[] public funderStructs;

    constructor ( uint _duration, uint _goal) public {
        owner = msg.sender;
        deadline = block.number + _duration;
        goal = _goal;
    }

    function isSuccess() public constant returns(bool isIndeed) {
        return (fundsRaised >= goal);
    }

    function hasFailed() public constant returns(bool hasIndeed) {
        return (fundsRaised < goal && block.number > deadline );
    }

    function
...

Continue reading →


Drafting Copy

A lot of interface design is writing copy. There are more words on a web page than anything else. The content is all words, words are in the navigation, it’s on buttons, in the headings, it’s everywhere.

I don’t think of myself as a copywriter and I don’t present my self as one, but it’s hard to draw a clear line between web design and writing copy. I have found myself having to learn more and more about writing effective copy as I design more and more applications.

I’ve put together a list of questions I run through when I’m putting words together. You don’t need to check everything off. This is not a recipe.

First Draft

  • Do they know what the thing does and what it’s obvious benefit is An easy way to get your pen to paper is to call up a friend, or catch up over coffee, and tell them about the thing. Don’t do a sales pitch, just tell them what it is and why its interesting. It...

Continue reading →