Wednesday, December 31, 2008

I have found an interesting technique that allows me to set my baby down into a crib or bed without waking him up. Typically, if I get my baby to sleep in my arms, he will wake up when I lay him down. All new parents know how frustrating this can be. It can be particularly daunting when they are teething and being awake means discomfort and crying.

I started thinking about what might be happening to wake them up. My first thought was that changing the angle they were on, from vertical to horizontal, was the issue. With my first child, I would carefully sit down in bed up against some pillows and slowly lower down until they were horizontal. This would take a long time and would still frequently wake the baby up.

Recently, I wondered if it might be the change in pressure when setting the child down. Here they are, in a nice comforting hug basically with pressure on their stomachs, chest, legs, ... and when they are set down, they are on a harder surface, and that comforting presence is removed.

Now what I do, is carefully set the baby down. I do not worry about them waking a bit and opening their eyes. That is sadly bound to happen. I then put both of my hands on their chest with fingers splayed and press about the same amount that they were getting when over my shoulder. Please make sure that you do not press too hard. This should basically be a reassurance that you are there and love them. I then keep pressing for a few seconds. The moment the baby relaxes again, I put a blanket on and walk off leaving a peacefully sleeping baby behind. No crying, no fuss, just a happy content baby.

Please let me know if this works for you, or what you do to get your baby down to sleep.

Tuesday, December 30, 2008

As many of you know, I am a fan and user of the Amazon Kindle. I have been reading lots of books on it recently (roughly 2-5 per week). When reading books with tables and images, I frequently find that they are too blurry to read. For some reason the font does not make solid lines. I am assuming there is not enough supported shades of gray to be able to draw the appropriate shape. Recently, I was trying to transfer a table off of the kindle by "Save Page as Clipping" or "Add Highlight". I found the context sensitive menu on the right had a "Zoom" option. When you "Zoom" an image or table, it frequently rotates to be in landscape mode and makes the image or table larger. Images and tables that have been "Zoom"ed on the Kindle are much easier to read. Here is a quick example of how to "Zoom" an image from Professional Search Engine Optimization with PHP: A Developer's Guide to SEO I have been enjoying this book. It is a great combination of SEO (Search Engine Optimization) advice, introductory material, and an explanation of how to actually implement solutions with code samples. Thank you: Jaimie Sirovich and Cristian Darie.

I start on a page that has an image that I would like a clearer look at:Move the scroll wheel up to the position of the image:Push the scroll wheel and select "Zoom" from the menu:And then enjoy the "Zoom"ed image:When looking for an example to snap pictures of, I found out that not all images or tables work this way. For the books purchased on Amazon, the ones that I have tried have worked. For the documents that I have sent myself using their email conversion, I have yet to see one work.

Hope this helps people enjoy their readers more. Lack of definition of images and tables was one of the few things that I did not like about my Kindle. I am very glad that they have this feature in the Kindle today. For what it is worth, I am running the latest version of the Kindle software as well. To upgrade, connect to wireless and put the thing to sleep using "ALT+aA".

**update** Sadly, one of the books that I purchased for the Kindle does not have zoom support. It looks like this might only work if people do some special formatting.

The world is trying to recreate the brain. Is this a good thing? I think it is a good thing. I don't know where it will end up. I may, in the end, feel like working on this kind of research was a mistake. If things end up in a Terminator kind of world, that would be bad.

I would like to understand why human brains take so little power and yet can dwarf my laptop in terms of flexible processing capabilities when my laptop heats the entire room when taxed. I think there are other models for processing that will yield very efficient results. Many of the biggest advances in industry are the result of someone taking the processes or procedures from one industry and adapting them to another. Can we take some of the manufacturing floor processes and procedures and port them over to help us understand and manage our email flow? Seems like a good idea to me.

If humans can create a brain that is simple and yet able to learn and efficiently carry out some tasks, that should give us more insight into the workings of our brains. More insight will lead to better understanding and improved ability to repair. I believe it will also give us some new computing models. Massively parallel influence based models. I think people will be surprised by a few things. 1. The brain's inputs and outputs are simpler than we currently expect. 2. The processing model is massively parallel. 3. The brain and input devices (eyes, ears, ...) are not as all seeing and all computing as we think they are. One example that I created during a discussion with someone near and dear, was that of peripheral vision and analyzing objects. People think that they constantly understand and can see everything around them. You know that there is a white van over there and think you know just what it looks like. It even feels sharp in your vision while you are looking somewhere else. Stop. Pay keep your vision firmly focused on one spot. Pay attention to the van. Can you really see it? Are the lines sharp? I think we are excellent parallel processing and filtering machines. We glance around quickly, stop on the van for a millisecond or two. Determine that it is a white van and move on. This object is now tagged. We have not really looked at it for a while. There are tons of details that we could have seen if we spent serious time looking at it. In the background, we are scanning objects that we are tracking. Have they changed? Try having a conversation in a parking lot. Pay attention to where your eyes go. I found that mine keep hopping from object to object making sure that they are still there, have not changed, and trying to decide if there is more to look at.

Evolving the entire human brain would be interesting. I think we would gain valuable insights. These days, I think I would just take small improvements. There are many logical actions, based on the context, that computers can safely take for us. Why aren't they? So much of our lives goes through the computers and it feels like we have to baby them through step by step. There has to be a better way. If computers were not just gophers that were sent to do specific tasks manually, and instead actually took appropriate actions based upon your wishes, I think world productivity would increase.

Saturday, November 22, 2008

I think I am experiencing withdrawal from PHP|Works and Py|Works. I had a great time in Atlanta. I was able to see lots of great people, spend time looking at at thinking about things I love, give a talk on AI and Artificial Life, and spend time working on my Artificial Life project.

A few months ago, I decided, on suggestion of Travis Swicegood, to revive my Artificial Life project of evolving group hunting and group defense among artificial life forms. This project was an excellent learning opportunity and I achieved most of the results that I set out to do. It started out very simply. I created a world with plants and added prey. I hand coded the prey so that they would be able to use antenna (a smell based system where smell decreased proportionally with the distance squared) to get to the plants near them and eat. This worked relatively well. Now to bring on the competition.

I started with simple predators that were the same model as the prey, but were following the "prey" antenna instead of the plant antenna. In my model, each pair of antenna would give information on only one scent. In order to handle multiple scents, the system would have multiple sets of antenna. Now I had predators hunting prey that were hunting plants. My world was charging creatures for each time slice, how far they moved, and how much they turned. The predators were able to keep alive for only a little while before they ran out of juice.

Now was time to add evolution into my "evolving group hunting and defense" project. I created a simple neural network, gave it nice high-level inputs and had it output neurons for speed (high, medium, stop) and turning (left, center, right). Remember that the predators were not living too long at this point. The very first time that I ran the evolving predators from a random start, the second generation did not die. One of the predators lived so long and ate so many prey that it actually wrapped the health counter to a negative number while the debugger was attached. Ouch. So much for my hand coded algorithm. At this point, the game was really on. I quickly modified the creatures to have a maximum lifetime and health count. No more infinite life or infinite energy. It also ensured that a trial would run for a maximum of around 37,500 clock ticks. Prey and predators were switched to evolving neural networks and physiology and were never switched back.

I have had several questions from people about how I managed plant populations and generations of predators and prey. Plants are replaced as needed to keep the population steady after every move cycle. Plants are centered on one of the four quadrants randomly chosen with a random distance (there is a multiplier that can be adjusted to make them more or less clustered). Prey and Predators have a similar methodology for being replaced. Once an entire generation of prey or predators are dead, a lottery is held. Each creature starts out with one lottery ticket, just for being alive. For each point of health that they have consumed in their lifetime, they get an extra ticket. This means that even completely ineffective creatures may have the ability to breed. It also means that you have to finish an entire generation before you can get more food. A single prey off in the corner can make it pretty hard for the predators to eat.

Thursday, November 13, 2008

I have been using and thinking about Amazon products for a while now. I have even started to use more of them. One odd thing hindering me is that most of my account usage recently managed to be under my wife's account. I think I was trying to track a package that she had ordered, but the net effect was that my browser remembered the settings and started automatically logging in as her. This has had a few interesting complications.

I have been wanting an Amazon Kindle for a while now. I actually liked the idea so much that I borrowed one from my aunt. I loved it. It still seemed like too much money, and the screen refresh rate was a little too slow for my reading speed. I was at my birthday party recently and was telling my aunt, from across the room what I had been hearing about the new version of the Kindle. I had already decided to purchase the new one the moment it came out. Note to self, "Never talk about the new version of something before opening the gifts." You will never guess what I received for my birthday. Yes, an Amazon Kindle. I love it. I use it constantly. It allows me to take multiple books with me without having to actually haul multiple books. I still am not terribly happy with the speed at which it swaps out pages, but I find that I am getting used to it. As one other kindle user mentioned, it is faster than manually flipping pages. Me, I think I flip pages faster than her, but to each their own.

Now, you are probably wondering what my wife's Amazon account and the Kindle have to do with each other at this point. I was at the party and registered the Kindle with the account that I have been using (my wife's). I then purchased a Guy Kawasaki's book Reality Check and started reading. Later, I found one of the top sellers, the Warren Buffet biography, at 60% off and purchased it too. Now I am in an interesting position where a couple of the books I have purchased will go away if I start using my account again. I want to register it to my account, but do I need to purchase the books again? I have finished and loved Reality Check. I don't want to do without it. Guy is going to send me a copy, but I might just buy it on the Kindle again. I want it handy. I have had several times where I wanted to club an entrepreneur over the head with one of his blog entries or a chapter in his book. I am thinking about starting to buy copies and have them shipped to the entrepreneurs. Transferring documents to your Kindle is as easy as sending the document to an email address and paying $0.10. Quite worth the price. I will likely be translating online documents into the Kindle for reading offline. I prefer the paper like look and feel and I find it is far less stressful on my eyes than looking at even a great computer monitor.

Another Amazon service that I have signed up for was Amazon Prime. I love the service. I pay a bit, but I get two day shipping free. I typically paid more for the shipping since I usually want books right away. Now, I can purchase more often, in smaller increments, and get the books faster. This too was signed up for under my wife's account. I have heard that I can share the Amazon prime account with my other user, so this one should not be too bad.

Amazon SaaS offerings sound really interesting. I know lots of people that are using them. I have spent some time with their chief evangelist. With their recent round of new offerings (block based storage and load balancing) I think they have a very complete offering. I have been using Amazon products and services for a while now. I have enjoyed them and plan on enjoying more soon.

I am also working on a book with several colleagues, "Technology Leadership in Silicon Valley". We are currently looking for a good publisher. Let me know if you are interested in providing feedback, quotes, or know of a good publisher.

Wednesday, October 29, 2008

In my previous post, I was trying to raise what I feel is an interesting issue. I think part of my point might have been lost.

Based on past experience, with applications for health and life insurance, it is a bad thing to have had a prior condition. Known and understood conditions are asked about on the insurance. Saying that you have a problem on an application gets that information into the system and may well affect your premiums or ability to get insurance. Not admitting a condition might lead to your coverage being dropped when you need it most (if they research and find prior existence of the condition).

My strong preference would be to change the way the system works so that people are not penalized for their knowledge. Right now, having cancer is not a problem. Knowing that you have cancer is. Not having cancer now does not help you if you have had cancer in the past.

With the way the current system works, systems like 23andme worry me. I worry that this knowledge and database of knowledge will be used against the consumers. How long do you think it will be, assuming it has not happened already, until people are asked if they have a genetic predisposition to a problem and have their ability to get covered affected. Right now it feels like an interesting time to go and use a service like 23andme, gain additional knowledge, and buy insurance before they ask about genetic predispositions. You may have to keep that insurance for the rest of your life.

Does anybody else feel like Gataca is coming? Oh, you cannot do this job because there is a slightly higher percentage chance that you will have heart disease. Sorry, it does not matter that your heart is fine, you have a slightly higher percentage chance that you will have heart disease.

As we understand more and more of the problems, issues, and interconnections between parts of the body and mind, I think this issue will become more and more important. I hope that insurance forms do not become a limiting factor in the quest for knowledge. I hope that additional knowledge does not become a problem for those that have it.

Tuesday, September 23, 2008

I was reading Sergey's blog entry on Parkinsons. I am very sorry to hear that it is afflicting his family and may afflict him. I am hoping that he will be able to help turn the tide against problems like Parkinsons. He found out that he has a predaliction towards Parkinsons by leveraging 23andMe. I took a moment to check out 23andMe and it looks very interesting. I like the idea of a quick swab and being able to tell all kinds of things about your genes. Are you predisposed towards particular things? A few questions came to mind as I was thinking about this though. If you were predisposed to some issues, would you want to know ahead of time. I think that I would, but how much would it come to dominate my life and the life of my family? People are not very good at odds. If you end up with a 5% chance of having a problem, are you going to suffer your whole life waiting for the other shoe to drop?

The possibly more interesting question though, is how long before people start asking about the results of tests like these on insurance forms? Are you predisposed to Parkinsons? What do you answer? If you have not had the test, I think you might be in better shape than having had the test. Would having the test be enough to make you uninsurable? I can easily see premiums being hiked due to genetic predispositions.

We are entering an interesting age where we may know more about our futures than might be good for us. At some point, this will affect the coarse we choose for our lives and the costs of various goods and services. Now might be a great time to try 23andMe and lock in low rates for long term care insurance before they start to ask annoying questions. That being said, I went with AIG life insurance because they were the most stable thing since sliced bread. It is hard to tell who will be doing well in many years...

Monday, September 22, 2008

I have long had a fascination with Artificial Life. My master's thesis at UCLA was evolving pack hunting and pack defense in artificial life forms. I thought it was an interesting project and it went well. I was quite surprised by the variety and completeness of the forms of hunting and defense that very simple organisms were capable of displaying. I was able to get my artificial life forms to display all of the kinds of hunting that were in a book on predatory behavior. My thesis was a parallel program written in C++. I am currently starting to port it to Python and I am going to present a talk on it at Py|Works "Exploring Artificial Intelligence with Python" . I hope that some of you can make it.

My ideal outcome would be to leverage my research and that of others to produce better, deeper, more realistic, and ultimately more fun creatures for games and education. Knowing how easy it is to evolve and/or run simple creatures that behave in amazing ways, I am constantly disappointed in the creatures that are out there in games today. I am also looking for people that would be interested in joining me in this pursuit. Do you love AI or online games? Would you love to make them better?