The Intelligent Investor

August 31st, 2017 Posted in Personal Finance | Comments

Picture of book cover for The Intelligent Investor by Benjamin GrahamBenjamin Graham’s The Intelligent Investor motivated changes to my personal investment operation. My copy of the book was published around 2006 and contains Jason Zweig’s commentary relating Graham’s observations about the stock market to the then recent dot-com crash. Having had some exposure to the dot-com crash and being an active participant in securities markets through the Great Recession up until today, I see in current market conditions parallels with those Graham and Zweig observed. Seeing these parallels pushed me to adjust my portfolio.

In a small section of his book, Graham discusses a company named Ling-Temco-Vought, Inc. The company grew through acquisitions funded by debt. Its market value increased as its size increased. With the increased market value, the company was able to borrow even more. In 1969, its long term debt was ten times earnings before interest and taxes (EBIT), and its interest charges were 98% of EBIT. This arrangement left very little gain for common stockholders. Market participants later realized this and adjusted the company’s market value accordingly.

I found a similar holding in my portfolio: Valeant Pharmaceuticals International, Inc. (VRX). Like Ling-Temco-Vought, VRX grew through acquisitions funded by debt. At the end of 2015, VRX had an EBIT of $1.4B and interest expense of $1.6B. Recognizing their struggle with debt, VRX has been focusing lately on divesting their acquisitions. Reading about Ling-Temco-Vought and seeing a parallel with VRX motivated me to immediately remove VRX from my portfolio.

In another gem found in his book, Graham also notes that a great number of initial public offerings (IPOs) are made at bull market peaks. This is a time when the market has a high demand for new offerings. He observes that IPOs during bull market peaks are of inferior quality, and he questions whether the investment bankers should be frowned upon for bringing securities of questionable value into the market.

There recently have been a flurry of IPOs as the S&P500 hovers at all-time highs. I was interested in IPOs by Blue Apron (APRN) and Snap (SNAP) before thoroughly reading Graham’s book. According to Snap’s Form S-1 registration statement, Snap has “incurred operating losses in the past, expects to incur operating losses in the future, and may never achieve or maintain profitability.” On its second day of trading, Snap peaked at $29.44 per share and a market valuation of $35.3B. The frenzied market valued Snap, a company that has never achieved profitability, above consistently growing market stalwarts. Since its peak about six months ago, Snap has declined to around $14.96 per share. Benjamin Graham kept me away from IPOs and prevented me from experiencing catastrophic losses.

Thanks to Benjamin Graham, I look forward to finding securities with good value underappreciated by the market. I hope to preserve capital while gaining a satisfactory, not exceptional, return on my investment.

The Intelligent Investor
Comments »

Aiming Higher

May 7th, 2015 Posted in Personal Development | Comments

Many people interpret the phrase, “aiming higher,” as setting goals that are 110% of what is desired. A trivial example of this interpretation’s absurdity is setting the goal to fit one gallon of water into a cup. Aiming for an unattainable goal is aiming for failure. The trivial example shows it also wastes resources.

“Aiming higher” is better interpreted as setting higher level goals. We set goals at different levels everyday. Figuratively, the goals at 0ft determine what should be done right now while those at 35,000ft determine what should be done over a lifetime.

There is a popular anecdote in which of three workers, each performing the same task, a traveler asks, “What are you doing?” One reports he is cutting stone, the other is earning food for his family, and the last is building a cathedral.

It is easy to become too focused on goals for the day, week, or quarter. We should frequently refocus our goals for career, relationships, and life. We should reflect on why we are doing what we do. Through such reflection, we can properly aim higher, achieve, and succeed.

Aiming Higher
Comments »

Installed Lubuntu 13.10 on Mini 9

January 11th, 2014 Posted in Linux / Unix | 1 Comment

I recently installed Lubuntu 13.10 to continue running updated versions of Ubuntu on my Dell Inspiron Mini 9. My Mini 9 was delivered with Hardy Heron (Ubuntu 8.04 LTS), and it will bother me to have installed a different flavor of Linux.

The procedure that I describe requires an existing Ubuntu installation and wired ethernet connection for the Mini 9.

I was unable to install current versions of Ubuntu, because of my netbook’s restricted amount of disk space. With the “Lubuntu Minimal Installation” option, I have no swap partition, a 128MB boot partition and an encrypted root partition with 1.8GB used space and 1.6GB free space after installation.

To ease updating, I downloaded the linux and initrd.gz netboot installer binaries and copied them to /boot/13_10. After rebooting, I entered the following into the Grub command line:

grub> root=(hd0,msdos1)
grub> linux /13_10/linux
grub> initrd /13_10/initrd.gz
grub> boot

There were complications with configuring the wireless adapter. The wireless adapter drivers are not installed automatically, and my wireless access point has a hidden SSID.

The wireless adapter drivers were installed with:

sudo apt-get install \
  b43-fwcutter \
  firmware-b43-installer \

The /etc/network/interfaces file was updated to:

auto lo
iface lo inet loopback

#auto eth0
iface eth0 inet dhcp

iface wlan0 inet manual
  wpa-roam /etc/wpa_supplicant.conf

A /etc/wpa_supplicant.conf file was created with:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev



After the above is performed, the computer is rebooted and the wired ethernet cable is removed. The wireless connection is enabled with the following:

ifup wlan0
dhclient wlan0

wpa_gui can be used for a graphical interface to the wpa_supplicant. Changes to wpa_supplicant.conf by wpa_gui is prevented by the update_config flag being set to 0. This is preferred to prevent losing my network’s configuration and polluting the network configuration file with several networks.

I installed Firefox. Now, the Mini 9 is running great!

Installed Lubuntu 13.10 on Mini 9
1 Comment »

Taking a Byte of Raspberry Pi

July 21st, 2012 Posted in Linux / Unix | Comments

Raspberry Pi LogoGaining access to new embedded processors is exciting. I recently ordered a Raspberry Pi Model B for 49.49USD, which includes the cost of the board, a case, and shipping. With an expected ship date that is 11 weeks away, its delivery is something I can be excited about for awhile.

The Raspberry Pi Model B features a Broadcom BCM2835 system on chip, which uses a 700 MHz ARM11 (ARM1176JZF-S) processor. The board contains two standard USB Type A ports and one HDMI receptacle. It uses a Micro-USB Type B connection for its power source. With all that it has on board, the Model B is ready to be connected.

I plan on connecting the Raspberry Pi Model B’s HDMI port to an HDMI television. One USB port will be connected to a Bluetooth USB adapter, which supports Bluetooth keyboard and mouse input devices. The other USB port will be attached to a WiFi USB adapter, which provides network connectivity. I plan on reusing my e-reader’s charger to power the Model B. My environment is ready after little preparation for operating the Raspberry Pi Model B.

As for software, the Raspberry Pi uses GNU/Linux as its default operating system. A web browser and office productivity software are included. Out of the box and connected to a display device, keyboard, and mouse, the Raspberry Pi can be used as a personal computer.

Education through their device is the Raspberry Pi Foundation’s primary motivation. The Linux kernel can be recompiled to experiment with the processor’s features. Python, which is bundled with the operating system, can be used for learning software development. The GPIO pins on the Raspberry Pi allows experiments with integrating external devices. The Raspberry Pi has great potential as a tool for education.

Advanced subjects such as cross-development and operating system specifics can be explored with the Raspberry Pi. The Linux operating system can be abandoned, and bootloaders, memory managers, process managers, and I/O managers can be implemented for the Raspberry Pi. Much education can be gained from the implementation of a specialized operating system. The benefits of implementing a specialized operating are beyond understanding an operating system’s function. Experience in complex software implementation and systems engineering also can be gained.

The Raspberry Pi, starting at 25USD, is an exciting tool for education about and exposure to embedded computing.

Taking a Byte of Raspberry Pi
Comments »

Linux Kernel Development

July 16th, 2012 Posted in Linux / Unix | Comments

Picture of book cover for Linux Kernel Development by Robert LoveFor nearly a decade, I have had a latent interest in developing the Linux kernel. I administered Linux servers for years, but I never had as much motivation as I have now to explore the kernel’s mechanisms. I remember leafing through books, at Borders, that made kernel development seem inaccessible. Robert Love’s book, Linux Kernel Development (third edition), stands out as an invitation to exploring and improving the open source operating system. Love’s book is a great introduction to Linux and its subsystems, and it has encouraged me to study the operating system’s implementation.

Love’s writing style makes the topic of Linux kernel development accessible to intermediate software developers. His style is clear, concise, and effective. It differs from the style used in voluminous books, which materialize publishers’ apparent hope to attract shoppers by taking up more shelf space at bookstores. The style of his writing allows Love to convey information in less words thereby saving the reader’s time. Love’s style focuses the reader’s attention on the Linux operating system, and his style allows the reader to pick up knowledge quickly.

Linux Kernel Development introduces process management, interrupt handling, memory management, and i/o handling as implemented in recent versions of Linux. To support examination of these primary operating system functions, the book also reviews data structures and thread synchronization mechanisms that are used by the kernel. The book delegates to others focused on algorithms the task of deeply examining data structures, but it provides thorough coverage of synchronization mechanisms used by Linux and highlights the strengths and limitations of each mechanism. The book maintains its focus on Linux by expanding study of topics that are specific to Linux and avoiding distractions of general topics such as data structure implementation.

Its organization, structure, and style makes Robert Love’s book a potent introduction to linux kernel development.

Linux Kernel Development
Comments »