Makzan / I share what I learnt

App Development

Migrating from Ruby on Rails to static hosting

I often need to have a quick QR code generation from URLs. Really quick. For example, when I am teaching mobile web class, I demonstrate the code and put the QR code up on screen for students to scan into their mobile phones for testing. That’s why I had written a tiny tool named […]

Read Post / April 5, 2019

Things to know to get started HTML5 game with socket

We want to build an HTML5/JS game that connect players with socket. Here is what we need to get started: 1. Web socket or library 2. HTML5 based game scene (a playground for interaction) 3. Showing other players into your game scene. Let’s get into them. 1. Socket library If we are getting started […]

Read Post / October 5, 2017

Blocking content on mouse hover

I don’t understand why prefer such hover effect. When you hover, the content is blocked by the title. But when you hover something, usually it means you’re interested in something, and now the illustration I’m interested is covered by a solid color block. ????

Read Post / January 19, 2016

Add margin at the bottom for easier links tapping in mobile safari

When designing web page for mobile device, I always leave some space at the bottom. Especially when there are footer links. That’s because in mobile Safari, tapping on the very bottom of the screen will toggle the toolbar, which hides when you scroll down the page. And so when user wants to tap on a […]

Read Post / January 12, 2016

Informative Message on Deletion

This is an informative message when disabling a feature in a Basecamp, which could affect the others. The message clears tell you what is going to happen and how others will interactive with the disabled function.

Read Post / January 6, 2016

“Area of Concern”—My reference when creating todo list

When I’m making todo list items, I always go back to the following essay from Ryan Singer to remind me the areas of concern. Link: Managing Product Development by Integrating Around Concerns  The natural approach most people take at this point is to divide the work by role. They create a “design” todo list and a “programming” […]

Read Post / January 4, 2016

[Failed] Share button blocks the content

When making web page, content is the most important thing that should be easily accessible all the time. But this website fails by putting the share button on the left. In the smaller screen, it put the share button fixed at the bottom of the screen. But in wider screen, like the screenshot, it put […]

Read Post / January 3, 2016

Testing to make a video teaching clip solely on iPhone

I’m Testing to make a video teaching clip solely on iPhone. git merge in 30 seconds It’s done in ExplainEverything + Clips + Memopad. The raw drawing animation is recorded in ExplainEverything. The Clips app is for editing and recording the voice over. Memopad and other graphics app are for drawing static frames. What’s missing […]

Read Post / January 2, 2016

Refactor Until You Feel Almost Comfortable

Link: Refactor Until You Feel Almost Comfortable How do you know when you’ve refactored enough and when you’ve refactored too much? I asked Sandi Metz about this once; here is a paraphrase of her answer: “Refactor until you feel you are one step behind the solution you want. Avoid your comfort zone. And while you might see extractions […]

Read Post / December 27, 2015

The process of building native app vs web app

This is the graph that I use when comparing building app with web technology (HTML5) or native IDE (Xcode + Swift or Android Studio + Java). Using the pure web technology to build app is fast. But it could take huge amount of time to make it polish and fix every little detail to make […]

Read Post / December 24, 2015

Trying Voice theme

I moved the site to WordPress to try several themes, mainly iA and NADA theme. I thought I would be happy with those minimal themes. But I figured out my site needs a theme that supports better category browsing. My essays have a wide range of categories that’s not a linear reading experience. That’s why […]

Read Post / December 16, 2015

Floating action button and the distraction

Link: Material Design: Why the Floating Action Button is bad UX design The search FAB thus distracts the user from an immersive photo-browsing experience. By taking up real estate on the screen, the FAB effectively blocks content. User dumazy posted on Graphic Design Stack Exchange about a problem he encountered when the FAB blocked the “favourite” star as well as […]

Read Post / December 16, 2015

Customizing screen on app switcher

We want to customizing app screen on app switcher in the following situations. Hide sensitive information on app switcher Enhance what user see on app switcher Create a view controller that shows a customized screen. During applicationDidEnterBackground, we presentViewController, without any animation. During applicationWillEnterForeground, we dismissViewControsser, without any animation.

Read Post / December 16, 2015

Link: Git pretty

Link: Git pretty, a chart to handle mess in you git commits. A chart to help you clean up a messy git commit history.

Read Post / December 2, 2015

Course material for Git

Recently I’m writing a course material for learning Git version control. It’s still in early draft. But better than having nothing. You may find the course material in the following link.

Read Post / December 1, 2015

Portrait upside down

iPhone 6 Plus introduces an iPad-like orientation setting—home screen can be used in all 4 orientations, including portrait upside-down. I think the app developer may consider adding the iPad orientation rules in their iPhone app. The rule is that any app have to at least support 2 orientations, particularly for portrait app, they need to […]

Read Post / February 16, 2015