Sebastien How

experiments on all things.

Effects of Hydration and Kneading on Bread

| Comments

As an experiment I wanted to see what differences kneading and hydration had on the final crumb structure of my bread. This was partly due to seeing a reddit post where someone decided to compare 2 different ways of making bread, one no knead and the other kneaded and then showed two breads but the recipe had changed as well. As is to be done in science and experiments, you need to minimize the variables that change. This is my attempt and results.

Hashed Directory File Storage

| Comments

A reasonable way to store a small multitude of files on a file system is through a hashed directory structure with details on the files kept in a database table. One advantage of this method is that it keeps directory reads and file access times quick by not putting too many files into a single directory. The requirements for a system like this are; spread files evenly throughout all possible directories, keep the hashed file names from colliding (ie having the same file name) and to make it harder for someone to guess a files name (especially usefull if you want all your files to be publicly accessable but prefer to share them on your terms).

To solve the problem of spreading files evenly we can hash something or everything about the file, it can be the full file itself, the files name, the date we received the file, anything. Since the purpose of this has is to decide where to store the file we dont need to worry about hash collisions and length of the hash other then making sure its long enough for the given directory depth structure. MD5 and SHA1 are perfectly reasonable algorithms for hashing here, MD5 being faster. As an example of what text Ive used for hashing is Original fileName + current datetime + something else random or unique like and id.

Baking Bread - 01

| Comments

Baking bread has been a fun and delicious hobby of mines for about five years now. I dont always have the time to bake and I don’t bake on regular scehdule or even the same amount or recipie every time, but I have learned quite alot and my technique has improved.

Password Management

| Comments

Password Safe and Dropbox, please use them.

Passwords are a fact of life nowadays, the more accounts you have, the more logins you have and the more passwords you should have. Ideally each account should have a unique strong password, usually people only have one or two passwords for all their accounts. It is important to not be in the second group where you only use one or two passwords when something goes wrong.

A web comic artist I follow was lamenting that an online account of his had been hacked and that he now needed to spend the night change all the password he could think of. At work I overheard another coworker ask for a password reset for an account they had forgotten how to get into. In a recent news article our local PD had one of its sites hacked and account credentials were posted online for everyone to see.

When things go wrong, its important to have already mitigated your personal risk. One of the better ways of doing that is by having different strong passwords for each and every account. For ease of daily use, you’ll want to be able to access your credentials everywhere you need to. That is why a password locker and a method to backup and retrieve your passwords in multiple places is important.

A password locker will allow you to store your login credentials for every site you frequent and you wont forget about the ones you frequent less either. You will be able to generate random passwords and you wont have to worry about changing passwords often and trying to memorize new passwords all the time. Only one strong password will need to be memorized at a time to access your stored credentials.

The password locker doesn’t have to be Password Safe, it could be 1password or LastPass or some other program. Whats important is that it is easy for you to use and stores your passwords securely.

The same goes for the method that you keep your secure passwords backed up and available where and when you need them. For me it was Dropbox there’s also Google Drive, SpiderOak and others, just do a Google search for “file hosting service”.

If you have more then one password you need to remember, please use a password manager

Workflow

| Comments

I have decided that workflow, more precisely the lack of it, is my number one reason I have not been updating reqularily or often. To fix this I’ve decided that there are a few goals I want to accomplish.

I want to be able to …

  1. create entries from anywhere.
  2. update the site from any of my most used computers
  3. keep the site backed up

Of these 3 the last one is the easiest; Octopress started in git, got cloned locally and finally I added it to a git repo on this web server. To manage 1, Ill need to figure out some way to create an entry and then turn that into a post, either by copy and paste once I get home or through some automated process which I have yet to discover or perhaps write.

For 2 I think git, rvm and ruby on my most used computers is the answer, for linux and osx, no problem I’ve already got it setup. My windows computer though seems to be a second class citizen in regards to ruby and octopress. Through trial and error I’ve managed to get cygwin, rvm, and ruby and all the ocotopress dependencies. unfortunently I have yet to get it fully working at home (probably just need to play with it a bit more).

For now My workflow for posting will be the following

  1. create a post on whatever system I’m on
  2. Get that post to one of my systems I can update on, wether its through email, network share or git
  3. Create the new_post and copy the post to it.
  4. regenerate and deploy!

Panoramic Photography

| Comments

This past Monday I received my newest photography toy, the panosauraus, its a tripod atachment to enable better panoramic pictures / stiching by positioning the camera exactly at a certain point to eliminate paralax when rotating the camera. Of course since I recieved some new gear, the weather decided to cooporate and rain for the next 4 days… constantly. Thankfully today was a good day and I managed to go out and take some pictures, and make mistakes like forgetting to make sure that the lens was really clean (Didn’t seem to negatively effect the pictures noticably)

These are the two that turned out ok, The first panoramic I tried today seems to be having stitching/photomerge problems in photoshop that I’m not ready to take the time to figure out yet.

On a mostly unrelated note, I need to learn the vim shortcuts.

Keeping Up With the Times

| Comments

What better way is there to learn a thing then to do that thing? In that vein I shall continue to make posts on this site, even though I may not have anything usefull, inspiring, amazing, etc to say. Consider this the blogging equivelent of posting a picture of the last meal I had (Tortolini and meat sauce with croisant and salad). Todays extra special blogging learning goodness? fancy code snippets and highlighting.

Random Snippet of code.
1
2
3
4
5
6
String str = "Hello World!";
List<String> strList = new ArrayList<>();
strList.add(str);
for(String foo: strList){
  logger.debug("The String says: {}", foo);
}

A very ineficient way of logging Hello world.

Adventures With Websites: Octopress Edition

| Comments

Drupal, Wordpress I’ve intalled both multiple times and each time I have I’ve created a test post and then never used them again. Now I’ve installed and have started to use Octopress. I’ve been using Windows pretty much exlusively for many years now and the languages and libraries required to run octopress/jekyll/ruby/ et all are not windows friendly. For that reason I decided to reinstall my macbook and start from scratch to set up a good development environment to play and experiment with the lanuages and tools i already know and want to know. More than likely I’ll be asking the more knowlesgable around me for help and advice, thank you in advance. Since this is my first post, lets hope it builds and deploys correctly.