Bitbucket static website hosting

This is a short explanation of a feature I really like about github and now it’s imitated in bitbucket. Essentially allows you to host a static site under your account.

It doesn’t support anything back-end but you can use grunt, gulp like automators to create a content management system that compiles whole site to static files then serve it up with this trick.

Very simple steps to do this. My username is “mfyz” in bitbucket and bitbucket allows 1 static website hosting per account. If you create a new repository called: “mfyz.bitbucket.io” and throw an index.html file, you can access the static website from “http://mfyz.bitbucket.io” address. Bitbucket will serve anything static including css, javascript files as well as binaries like images.

Create Baby Dashboard with cheap Tablet

When becoming parent, first thing you get into is the feeding and changing cycle of the baby(ies). It’s tiring but optimizable cycle since the whole thing is pretty standard in the beginning.

 

And keeping track of feeding and pooping activities becomes very important especially in early days. You need to feel comfortable that your baby is growing. Best way to know how they are doing well is to track how much they eat around the clock and how many times they pee and poop. It’s a weird thing to track when you think about it but it’s actually very natural and best way to think the only sensors you have about your baby in early days.

You’ll most likely to have multiple people looking after your babies and it’s inevitable to do shifts on feeding and changing duty and it gets really easy to lose track of how much they are consistently eating or pooping. Most parents take notes on paper, or keep track of it in some ways. The tech parents 🙂 will obviously use some form of digital tracking and there are many many apps does this. I’m looking this in an experimental mind and thinking, how this becomes a seamless process.

Last year, when I was trying to hack amazon “dash” buttons, I found this engineer dad, hacked dash buttons for exactly this purpose. Basically, he had 2 buttons for his baby that when the baby poops, tapping to one when the baby pees, he taps to the other one which is pinged to an IFTTT hook to log the timestamp of the activity in a google spreadsheet. Connecting the dots between these services literally takes 5 minutes if you guys are familiar with them.

My challenge was having 2 babies and my early “monitoring” task that I was assigned from the pediatrician was to track of how much babies ate in every 3hr cycle. So I had to log how many milliliters babies ate. I also needed to see last 3-4 times to make sure I balance out if one baby ate less last time, so she gets more attention this time. Having 2 babies at home definitely, requires 3 people’s attention. We also share the day to take some of the feeding hours to be done by one person. I usually take nights and when it’s my turn, I don’t have anybody up to ask what they ate last time. Same thing for my wife and my mother in law when they wake up and I go to bed and it’s time to feed the babies.

I created a solution to stick one of the old tablets to the wall and create a mini-app to log and see the last 4-5 feed logs. So everytime someone feeds the babies, they simply click 2-3 times to log exact amount for each baby.

I wanted to write a react js app to practice react a native little bit more and also have native animations but I found myself losing in “perfect” routing and modulation of the UI which I dropped and wrote a web app in half an hour. I pretty much created a front-end only app that triggers webhooks and implements some proxy APIs to public services to pull some more helpful information for our home life (like clock, weather, brief forecast, a background slideshow of black/white photos from Flickr). Here is how the tablet screens look like. Of course, I’m using a full-screen web view wrapper app to display these in a more kiosk-like way.

Then I let bitbucket to host it without worrying about deployment, hosting etc…

Who has a spare tablet?

Well, we’re trashing more tech gadgets than ever. You may have an old android tablet or iPad or you may not. There are 2 super cheap ways to do this.

Amazon kindle fire tablets are getting bought-from-china level of low costs and Amazon keeps having sales to boost to uses of kindle fire tablets. Having Kindle fire tablet 7 is often as low as $35 to own one. To be honest, it can’t get cheaper than this.

Another way is to look on eBay to get a used one for a low cost but I can’t imagine if it will be cheaper than getting brand new kindle fire tablet. Maybe the last option can be looking at cheap android tablets that go cheaper (on aliexpress).

Tablet on the wall, Ough?

Sticking a tablet on the wall is not my way of doing this. So I hacked an IKEA frame to embed tablet screen with a black canvas cardboard and hide the tablet.

Now it is much more appealing… 🙂

iPad and Apple Pencil best works with Notability app

I was very skeptical about styluses for many years, especially over a screen. Closest thing was Wacom’s Cintiq and that was a giant monitor. The reason that styluses weren’t compelling is because they were laggy and never felt great to draw on screen.

Even with Apple pencil, it is still not great. But very very close. I owned pretty much all iPad models and versions from the very first release (I got a limited edition back then). And I’ve used Apple Pencil from it’s first debut but wasn’t convinced and also rejected the new gadget because it wasn’t Steve Jobs way. But I can totally understand it’s value from the educational standpoint – not art (at least not yet). The first release wasn’t necessarily laggy but you can definitely feel it’s tech side of it. There is only one thing you’re looking at a pencil, and that is the feeling has to be real because you’re dragging a pointer on a virtual paper.

With the latest iPad Pro 10” version, with screen refresh rate going much faster, now you can definitely feel it’s very very close. With the software support and not being paranoid about hand touching screen while writing or drawing, it definitely gets very close to the real thing. Unfortunately I’m still seeing many of the drawing and note taking apps are having the lag it had from 60 refresh rate old screen. I don’t know why it still has that.

Notability is the one app that I’m feeling very comfortable to draw and create stuff with it. My use cases are still a lot of ideation, super low fidelity wireframing, some planning work. I love the output feels truely non-techy creation but it is in fact a digital creation.

Sometimes we udnerestimate the value of not having boundaries when we think. Even including the requirement of typing our ideas or words on a keyboard being a restriction to our mind. I started this back-transformation with using more and more moleskines than taking notes on my phone.

I like Notability app because it’s very simple and plain app with few extra features that I like. You can link your dropbox, google drive accounts to backup all notes in PDF format that becomes very handy when you want to draw some stuff and open in your computer very quickly.

Working from home as a father and sleep in biphasic or polyphasic cycles

For last 2 years, we have re-structured our company and teamwork process to become very (digital) nomadic. We have reconfigured all of our communication and project management processes to be remote-friendly. In fact, 7 out of 10 of our team members work completely remote. 2 of the team members that I’ve been working for last 2 years that I haven’t met in person 🙂

I took parental leave from my company last few weeks and now I’m back to work. Before I was fully coming back, I was trying to figure out how my early baby-care schedule will be working out with my work schedule.

First I re-read some of the old topics that I used to research about sleep patterns, work and focus management experiments I used to do. I’ll talk about them in this post. Then I started to create some alternative ways to define work, baby care and sleep blocks around the clock. This planning can get so anal if you want to. I kept it logically working with my existing baby-care schedule that I adapted last few weeks (since the babies arrived). Now, let’s dive into them.

Thinking about sleep schedule

Sleep is probably the #1 topic for new (or repeating) parents when it comes to newborn or young babies. I think people are doing this wrong for uncontrolled reasons. Having required working on certain hours definitely makes this harder to manage because if you have a full-time work that required you to be on-site or on specific hours, you don’t have any option to work and have to be concentrated within those hours and continue doing your baby care shift at evening, night.

Since I have the luxury to define my own hours of when to sleep, when to be awake, when to be working and when to be resting, I approached this from the “mad scientist” mindset. This actually comes from the “creative” or “scientific” geniuses that are well known in living or experimenting with alternative “sleep patterns”.

For people are foreign to the topic, there are very analytical methods of different ways to plan your “resting” hours for your day. Sleeping is not always necessarily has to be 1 block of time for 8 hours of sleep for everybody. A lot of people does multiple blocks of sleeping. Well-known example of this is “siesta” in Spanish/Italian/Latin cultures. This falls under biphasic sleep (twice daily). But there are more challenging and weird versions of this pattern as known as polyphasic sleep pattern (more than 2 times a day). The main reason for many people trying alternative sleep pattern is to decrease total hours of sleep and provide similar/enough resting time for the body, so you can save extra hours to live longer days.

This is why many scientists or creatives try these patterns to get more hours of working/thinking/creating for their peak creative years. Some of the well knows are Da Vinci, Edison, Tesla, Churchill, Benjamin Franklin, Thomas Jefferson. There are many ways to do this alternative sleep patterns but there are know models:

To learn more about polyphasic sleep patterns: https://www.polyphasicsociety.com/polyphasic-sleep/overviews/

So here is my formula that falls under Biphasic Sleep Pattern that I worked out with my own schedule:

Thinking about work schedule

Our team works in different timezones from different continents and with our clients being almost on the other side of the planet, everybody works in their own hours except our team synchronizes once every day at 10:15am EST. We do a very short standup usually averages around 5-6 minutes. Other than this we only focus on the deliverables and weekly milestones that are usually set up at the beginning of the week. Rest of the week, we keep collaboration between team members based on people’s availability without a strict model.

This allows me to define my own work hour blocks and breaks that I want to work at. So based on the splitting my sleep, I split my work hours into 2 main blocks with a long break in each work hour blocks. So I designed 4 blocks of hours on the remaining hours of the sleep to focus on my work.

The drawing below shows the work blocks and their sprints in it. I’ll talk how I think about these sprints when I sit down to work below.

How to create focus in work hours since baby-care can be super distracting

This is pretty much how to focus, how to plan your own time and this topic itself is a separate topic to cover with many alternative methods. I’ve been working in tech almost 15 years now and I’ve experimented with many many methods including the ones touches to the project management, provides team focus and better collaboration. Last few years the methods that is remote work friendly become more appealing for me.

I like the pomodoro framework with adding few extra tools and adjusting the strict-pomodoro with few changes. This was a model I worked many years ago and we did the team-pomodoro for a while couple years ago in our team with busy lights and team dashboards that plays well with our adjusted-Kanban style project management.

So, essentially I split my work hours to pomodoro blocks. Which is 25-minute work + 5-minute rest (30 minutes) sprints that gives me 15 pomodoros a day. Pomodoro is just a mental checkpoint for me. To me more important to think about, how to minimize distractions. With many “screens” that we carry and wear, it becomes so much easier to get distracted even if you lock yourself in a room to work. Below, few tips I follow when I execute my pomodoros.

1) No mobile device to be vibrating, flashing screen or making sounds while working in pomodoro. A simple way to do this is, disable your notifications – using don’t disturb on mobile phones is the easiest way to do this. Put your phone/tablet etc facing screen down on the table is enough way to achieve this. Don’t use wearables that vibrate – or disable everything. I only use apple watch in airplane mode for the timer.

2) Define with pomodoro blocks that you will use communication tools, email responding, slacking, trello, social network etc… Only allow yourself to use these apps/sites. Use a tool to restrict your access to social networks, email sites even apps to use on your mac/windows. I use “Focus” app to block distracting apps and sites that show an alert even if I forgot and try to open these apps or sites.

3) Stop when pomodoro ends. 5-minute breaks are essential and don’t look at the screen on your break. Drink water, stand up, lay down on the couch but don’t interact with screens while on your short break. Use a visual or strong vibrating wearable for your pomodoro to make you annoyed if you don’t walk away from the computer. I use apple watch and it’s basic timer to get me very very aware of the timer is up with haptic feedback. I tried jawbone up and other alarms – phone alarm or pomodoro timers on mac. Nothing is as strong as my solution for me.

Bad Product Design for Multi-Team Services: You have to be part of only one team!

I started to see this bad product design of having personal and team accounts linked together on some services. Most of them are doing wrong! The biggest limitation to be able to only have one team linked along with personal accounts. Two popular ones that drove me crazy lately!

  • Dropbox
  • Quip

Don’t these companies think there are millions of freelancers that have to be part of multiple teams? I’m not a freelancer but I have multiple initiatives and I want to use them on my mobile devices, desktop and I actively participate. Unfortunately, I have to keep logout and login on the browser. Sucks for Dropbox! Honestly, it doesn’t fully deserve a huge chunk of money I pay for these services every month. Please do it right if you’re calling this feature “Teams”. It’s not team dude, it’s just collaboration.

Becoming tech father

I’ve recently had twin girls and I’ve been in the process to become a parent. Have been reading and following tons about what to expect in pregnancy as well as rising a child. Obviously, one of the active conversations everybody is having in many different aspects is; how technology affects a child’s development. My opinion is, there is a lot goes into how technology affects a person’s education depending on how kids are exposed to the technology itself.

Since my babies are very small and won’t have the difference to have or not have technological additions to their life for a while, I’m thinking how I would use tech as a tool in my parenting. I’ve been adjusting my lifestyle and adapting my tech skills to taking care of my new babies. One of the things I’ve been reading was how engineer/developer dads approach to many different aspects of technologically enhancing their early parenting experiences. Most of these are obviously about optimizing the process of nursing babies, getting an early education with technological products.

New entrepreneurs are born with kids

(Not the kids that born but the parents becoming entrepreneurs)

Often we see a lot of new ideas and products come out of these raising-child struggles and ideas around improving ancient methods of childcare. We see many fun examples of them in Shark Thank 🙂 I really enjoy watching a lot of tech-dads or tech-moms seeing an inefficiency in the process and come up with a new way of doing this never changing life cycle of humankind. I totally get why childcare ignites entrepreneurial mindset.

Every human being born the same way, raised same way at least it’s very similar despite the cultural differences at least early on in their life. This creates an amazingly similar pattern to be worked with for an entrepreneurial thinking. And best, most parents repeat this cycle multiple times.

A new area to geek on for tech-parents

Not all the custom-made solutions make its way to being a new product or service. Most often, you see these small iterations shared conventionally. With the internet, now these conventional wisdom is out there in blogs (like this one). And many parents are sharing their experiences, how they overcome certain obstacles or struggles in their parenting journey.

This is particularly convenient for tech-parents. I’m sure I’ll be participating on this like others. In fact, I already made experiments with some hardware to enhance my fresh baby-care journey.

What this means in the internet, software world is pretty much a lot of new apps and some hardware supported software or services. Since geeking on this is essential, I will be sharing my experiences soon (within the tech-related topics).

Super Affordable Cloud VPS: Scaleway

Recently I have been having performance issues with few personal sites that I was hosting on my small Digital Ocean instance. I was using 2vCpu, 2gig ram instance costing me $10/month + 30gb disk for extra $3/month. To be honest this is a very very cheap personal server to have and host few sites as well as doing minimal software tests and playing a good proxy/vpn when I need it.

I have installed New Relic, Datadog, Pingdom and linked them to my personal slack account to have everything monitored and reported seamlessly. I’ve been getting CPU and occasional memory alerts mostly because of my wife’s blogs that is getting much higher traffic than my sites. Even with that traffic, it was making me feel the performance that I supposed to get from that server wasn’t as consistent as I wanted.

A new kid in the block

A few weeks ago I started going into cheap ssd vps hunt again and I saw many more players in the game including Amazon Web Services’ Digital Ocean killer. I compared many services and wanted to find something more stable and reliable. But I found a very very new and smaller company utilizing raspberry pi like ARM based hardware in greater scale for this small to medium size VPS services called Scaleway. Although the CPU architecture as “server” is foreign to me, I was getting curious. One of the differentiator factors for Scaleway is because of the initial and maintenance cost of the hardware, the costs of equivalent instances to be ~5 times cheaper. This means I can get 3-4 times more powerful machines with the same minimal monthly cost I’m spending for Digital Ocean or similar services. Scaleway is definitely pushing hard on the $5/mo SSD VPS game.

The main question was and remains “how reliable this new French startup for a permanent VPS need?”. This is obviously a risk but for me, it’s an easy risk to take because I mastered to set up and migrate web and database servers in many years with bare minimum servers as well as with cloud services like AWS or Azure.

So I took the risk and moved to Scaleway in 2 hours with 2x size instance with pretty much half of what I pay which is ~$5/month. It’s been 2,5 weeks and I’m seeing no hickups or any issues so far.

You can explore the machine options and pricing for each architecture here: https://www.scaleway.com/pricing/

Great resource to learn programming Swift

If you are interested in getting started with mobile development and if you like to start with iOS, I bumped into a great resource to learn Swift. There are tons of sample projects and great video walkthroughs as well as source codes of the projects you can download from GitHub.

Lessons Page:
https://swifteducation.github.io/teaching_app_development_with_swift/

Available on iTunesU to follow lessons on mobile devices:
https://itunes.apple.com/us/course/app-development-teaching-swift/id1003406963

Sample projects’ source codes:
https://github.com/swifteducation

Mobile simulators on cloud

I had a radical switch to iPad Pro as my primary workspace and I used that set up exclusively for 6 months. As part of my day to day work, I test a lot of features and new developments on our mobile development cycle. I uninstall and re-install and replicate a lot of weird conditions on mobile environments. It’s great to do these and relatively easy to simulate these cases with real devices but when it comes to testing Android, it gets a pretty wide range of devices and hardware/software differences. Often I test the same user behavior on 5-6 devices which is very annoying.

This could be easily me doing testing 🙂

Anyway, I was in search of doing this on the actual mobile device but replicate the other hardware and software variations but in the very cloud, remote-desktop fashion. Why there is no strong service doing this more professionally? Other than testing purposes, I really want to open and want to play with a new android OS on a real device with any resolution I want to and stream that to my existing mobile device? I would love to check out some android apps on my ios device, vice versa…

I gave a try to:

  • AWS Device Farm – their browser experience is very lagging, starting up a device takes at least 4-5 minutes (why?) and there are most of the time device initialization errors.
  • appetize.io – so far, the best experience, mobile browser friendly as well, but limited virtual device variations and there is just one real device type.
  • Genymotion cloud – I haven’t got a chance to play with it since they are in their private beta.
  • Other option is to build it manually with VPN or RDP but required rooting or jailbreaking the device which is not ideal and painful to go through.

Hopefully, we’ll get there and we’ll have the option to stream apps or OSes as we do movies tv shows today…

Digital Nomads

The term “Digital Nomad” becoming more and more popular in every year within last decade, maybe more visible in last 5 years. It has become well known and accepted as more people shared their nomadic stories on their blogs.

We can say it’s more like a lifestyle change than a temporary thing for most people. There is a pattern on the personas accepted this lifestyle. They are working mostly in the tech industry, usually creates stuff, standalone or not needing constant collaboration with a team or don’t have physical dependencies (sourcing materials etc). People like sysadmins, developers, designers, digital artists…

The term “nomad” explains the lifestyle factor more than being digital because it’s all about being location independent. Working from everywhere at any time (often working all the time for entrepreneur versions). Does it sound great right? Executing is not necessarily that great 🙂

I’ve been experimenting with different elements of becoming a digital nomad in last year period. Each of the following topics below deserves a much deeper explanation but I’ll summarize them now. I’ll write about each one separately later. Continue reading “Digital Nomads”