Latest Posts
-
Book of the Week: Rework
The most interesting thing about Rework, is who it is written by. Rework is written by 37signals, the creators of Ruby on Rails. If you’ve done any web development, you’ve heard of Ruby on Rails. 37signals intentionally kept their team to 16 people at the time the book was published. They built a business, not a startup. This book is about what they learned about building a business. The book has many small sections that make for a quick, but worthy read. Ideas Ideas are cheap and plentiful. Everyone has ideas, but how many people execute on those ideas. Ideas are amorphous until you will it into being. Henry Ford was a man with ideas and action. The Ford Charcoal company used wood scraps from his production line. One man’s garbage is another man’s Kingsford charcoal company. If you want to start a business, you need to start building. Customers The book mention that you don’t need to write down customer feedback, because you won’t forget the important stuff. If you forget it, then it wasn’t important. I never memorized the periodic table in chemistry, but I looked up the numbers so often that I didn’t need to look them up anymore. You need to change how you interact with the customer, so you can effectively solve the customer’s problems. Relationships with customers are important. Give them a taste of some good stuff and they will keep coming back for more. Teach them how to roll it up properly for maximum satisfaction. More words in a blog post does not necessarily make it better. -
Book of the Week: The Intelligent Investor
The Intelligent Investor was written by Benjamin Graham, Warren Buffett’s sensei. If reading this book will make me an intelligent investor like Warren, I’m all for it. The first thing you will notice about the book is that is very thick, over 500 pages. The original book was nearly as thick, because my edition 2006 has additional commentary and footnotes. Having more pages does not necessarily increase the value. One of the commentaries suggested that Graham’s advice about avoiding mortgages and junk bonds was outdated, because of new investment vehicles. The same investment vehicles that were responsible for the financial crisis. I’ll think I’ll keep to Graham’s advice. Inflation and Taxes Real gains after accounting for taxes and inflation are what you care about. Which investments you chose depend on your own personal tax situation. One should also be ready to take advantage of any tax savings you can find. Inflation and taxes are just as important as returns. Market There is no market, only underpriced and overpriced stocks. One needs to change the mindset of investing from picking a thoroughbred horse to buying groceries. You’re not out there to pick a winner. You need to find a good deal and eat what’s on sale. Wash Rule I totally forgot about this, because I avoid taking losses. The wash-sale rule states that you if you sell and buy back a stock, you need to wait more than 30 days to buy back the stock in order to take a loss when you sold it the first time. This less you get some tax savings while retaining a stock you want to keep. Value Formula for Growth Stocks Value = Current (Normal Earnings) x (8.5 plus twice the expected annual growth rate) Two Types of Investors There is the passive defensive investor and the active intelligent investor. An important part about being an intelligent investor is to be disciplined enough to stick to a given plan regardless of the market. Being a passive investor is similar to the advice given in David Swensen’s Unconventional Success. Buy market index funds at regular intervals to take advantage of dollar-cost averaging. You can do this by making a habit to buy an index fund every time you get your paycheck. It takes work to be an intelligent investor. You actually have to read the accounting books of the companies and do some analysis to see if they are actually overpriced or underpriced. It is a bit scary to see the different ways companies try to cook the books. Being an intelligent investor is not very glamorous. You either just go on cruise control and track the market or spend a lot of find going over accounting statements. Buy stocks like groceries. Purchase The Intelligent Investor from Amazon.com or check it out from your local library. -
Book of the Week: Effective Java
Learning a programming language only gives you the lego blocks to build something. The best ways to put the blocks together to make an object without everything falling apart requires more than just knowing the semantics of the programming language. Effective Java gives examples of what not to do and why you shouldn’t do that. Usually you learn these things after experiencing why you shouldn’t do that. Sometimes you pick up a few things from the code review process, but it is better to write effective Java from the start. I’m not a big Java fan, but writing effective Java will make it less painful. Purchase Effective Java on Amazon.com or check it out from your local library. -
Book of the Week: iOS Human Interface Guidelines
iOS 7 represents the biggest UI change to iOS since its release. The iOS Human Interface Guidelines provides the thinking behind these UI changes and guides you in designing apps that work well in the iOS ecosystem. If you’re going to make an iOS app, it better behave like an iOS app or your users are going to be confused. People’s expectations are built upon their previous experiences. -
Book of the Week: Einstein's Dreams
-
Book of the Week: OpenGL ES Programming Guide
The OpenGL ES 2.0 Programming Guide tells you how to write OpenGL for embedded devices such as Android smartphones and the Apple iOS devices. OpenGL ES 2.0 is a subset of OpenGL that is designed to work on embedded systems with higher constraints than desktop applications. They trimmed a lot of the fat and removed multiple ways to do things. I’ve used the previous fixed pipeline in OpenGL 1.x to create 3D graphics for games and data visualization, but programmable pipeline is totally new to me. This book was a great introduction to help me get started. I recommend reading the guide through one time and then going back and to try implementing things. You need to get a sense of all the pieces before you can put it together. Mathematical Background Before programming OpenGL applications, you need to have mathematical computer graphics background. Fundamentals of Computer Graphics and 3D Computer Graphics: A Mathematical Introduction are good places to start. Linear algebra provides mathematical foundation on how the geometry is manipulated. I also recommend reading the sections about quaternions if you’re serious about rotations. Fixed Pipeline vs Programmable **I need to forget that the fixed pipeline ever existed. If I were to teach a class on this, I would totally ignore the fixed pipeline. The early graphics cards were highly specific circuits designed to process 3D graphics information. As time passed, GPUs became more general-purpose highly parallel processing data crunching devices.CUDA leverages GPUs for general purpose computing to cure diseases for scientific computing. In the programmable world, each processor loads a shader program, which determines how geometry and other information will be manipulated to create the final image. As an example in the book, the fixed pipeline is implemented as a shader. There isn’t much work required to replicate the fixed pipeline if you still want to operate in that mindset. Programming for embedded systems can be trickier, because you are more likely to hit constraints you don’t know about. One thing is that some devices only support complied binary shaders and each binary is different for each vendor/device, so there is no portability between them. -
Book of the Week: Enterprise Data Workflows with Cascading
Enterprise Data Workflows with Cascading describes how to build big data applications with a focus on how data moves without worrying about details. The concept behind cascading reminded of the old Waterworks card game. You connect pipes together with a finite set of pieces to create a complex network bringing resources from one place to another place where it can be better used. The directed graph diagrams can be created with dot from graphivz. $ dot -Tsvg graph.dot -o graph.svg -
Book of the Week: The Affluent Society
I read The Affluent Society by Harvard economist John Kenneth Galbraith to find out why people are poor. The book makes a lot of points, but I was lost in the beginning when the names of a bunch of economists were thrown around. I have no idea who these people are and what ideas they have. But it doesn’t matter what they think. Even though this book was written in 1957, economic and societal considerations are similar. -
Book of the Week: The Elements of Drawing
I found The Elements of Drawing by John Ruskin through the iTunes U course. The book was published in 1857. I had to look up what india-rubber and a penknife are. The drawing instruments have have changed a little bit, but techniques haven’t. The book is divided into three letters. Drawing As a scientist, drawing is about conveying an idea to another person. As an artist, drawing is about what I want to make another feel. Leondardo da Vinici used his skills to create famous technical drawings and paintings. By reading this book, I hope to take a step toward becoming a Renaissance man. Letter I: On Practice There many exercises with explantations of their purpose. The goal is have control of your hand and work on seeing different parts of the world. The practice gives you tools, so you can draw. Drawing is not just reproducting what you see. Letter II: Sketching from Nature -
Book of the Week: Beige Book
I heard about the Beige Book from NPR. Beige Book The Beige Book is published 8 times a year by the Federal Reserve to summarize economic conditions in each of the twelve Federal Reserve Districts.
-
Book of the Week: Theory of Blackjack
This book details the mathematics behind blackjack with appendices on how the tables are calculated. Beat the Dealer was a good start. The Theory of Blackjack is what I need to write software to study blackjack. Purchase The Theory of Blackjack on Amazon.com or check it out from your local library. -
Book of the Week: Beat the Dealer
A This American Life episode about Blackjack inspired me to read Beat the Dealer by Edward O Thorp. The first edition of this book brought card counting the masses. This edition details the developments after the first edition. Blackjack Blackjack is the only casino game where you can statistically beat the casino. I thought analyzing blackjack would be easy, but there are variations in rules concerning soft hands, doubling down, insurance, splitting, etc. Each casino has different rules, which can make some casinos more favorable to play at than others. Beating the Dealer Information gained by keeping track of played cards lets you know when you have a statistical advantage. The problem is how to keep track of played cards. One way is to assign points values to each card and keep a running sum. As you get to the end of the deck, you become more certainty about the remaining cards. Play can be broken down into 3 levels.
