Been a while since I posted a vlog update. Here’s the footage I shot in 2018 that I didn’t get around to uploading since my last post. Reiko and I went to the Taipei National Palace, the Huaxi night market, a Godzilla exhibition, went to America and ate a deep fried pickle, took a visa run to Hong Kong to go to the biggest electronics expo in SE Asia, and I ate some natto and a plum flavored pickled radish.
So I finally got around to finishing my cloud hosted photo gallery. I tried virtually every service, (flikr, google photos, imgur) to see what I liked best and none of them were what I wanted. Still don’t have everything posted and I want to build in some gallery organization but it’s a start. It’s really only lightbox rendering the photos from a CDN, but it was a good experience. Shouldn’t be too hard to add a dashboard for admin.
First set of pictures has my trips to Dublin, Berlin, Paris and San Francisco. Fair warning – it doesn’t paginate and they aren’t thumbnailed yet so it’s basically a 300Meg dump.
Check it out: raleighillgen.com/photos
Hey! Been a while since an update. I’m in Taiwan and am going to be sticking around here for a while. I started seeing a wonder person, Reiko, back in January and we went on a road trip for Lunar New Year.
So I tried using Caffe for some natural language processing and found it wasn’t well suited. While it’s great for image processing with convolution networks (CNN), it would take quite a bit of effort to add looping output to make a recurrent (RNN). Recurrent Neural networks are helpful in natural language processing. For instance, if we’re going to pick the next word in a sentence, it’s important to know what words came before it.
Keras is the other major python based neural net tool and to use it, you need matrix library like Theano or Tensorflow. I chose Theano since Tensorflow doesn’t have good windows support at the moment.
The main issue I ran into while installing Theano a crash I was running after installation. The Windows guide can be found here. The dependencies all installed more or less without a hitch. However, I foolishly thought my gcc installation was sufficient, and eventually ran into problems the first time I tried:
conda install theano
I hit a wall. Unfortunately, I didn’t catch what that first error was. The bottom line is I eventually realized it was missing compiler error, and I thought I solved it with
conda install mingw
This doesn’t work! I was able to get Theano to import in python after I added the .theanorc file to my %USERPROFILE%, but I was still running into a python crash specifically at this line in the gpu test:
f = function(, tensor.exp(x))
Python crashed and burned and I figured it had to do with mingw not using a 64-bit binary or dll. No evidence though. Anyway, this fixed it for me:
conda uninstall mingw
conda install m2w64-toolchain
If I had followed the directions closer, I might have saved quite a bit of time, but I just assumed GCC was fine.
Never assume your toolchain is right when you’ve got x86_64 flags in the mix until you’re compiling.
So I recently was corresponding with a friend about Bitcoin. Since I haven’t mentioned anything about my interest in cryptocurrency, here’s the summary I sent them, reposted with permission
Totally in agreement that it’s a radical departure from previous asset transfer mechanisms. Bitcoin is the first generation of tech that enables uncensorable payments in a state-free currency. Value transfer is the primary idea, but there are lots of other applications for a distributed ledger like notarization. A multiparty transaction can include a message like a contract that is an unalterable, timestamped proof of signatories. Anything that requires proof of timestamped signatures is a possible application (securities, insurance, rental agreements, ect).
Get a little faster every day. Today I got sick of autocompleting the node npm commands I sometimes use hundreds of times a day. No idea why I put up with that for so long.
So I wanted to use the function keys like in an IDE like eclipse so I can build and run the code I modified as quickly as possible i.e. not having to key in a few characters > tab > key some more characters > enter. What a waste of time!
Note that if you’re using a different shell this will vary. I initially came across the solution for BASH which is ‘bind’. I use Zsh with the Oh-my-zsh plugin manager so I had to use ‘bindkey’
I found the answer here: https://unix.stackexchange.com/questions/79897/how-can-i-use-bindkey-to-run-a-script
The -s switch lets you bind a string to a key. So to bind F8 to my ‘npm run webpack’ command:
bindkey -s ‘^[[19~’ ‘npm run webpack\n’
To bind F5 to my ‘npm start’ command:
bindkey -s ‘^[[15~’ ‘npm start\n’
The \n at the end is a newline which runs the command immediately. Put these in your .zshrc to save between sessions. Yes, I realize I could trigger my ‘run webpack’ command with the ‘npm start’ script. I like to keep the build separate from the run though, in case I just want to test if webpack worked.
I’ve been doing some uke covers. Check it out!
The classic HTWF&IP by Dale Carnegie was an interesting read. A lot of the suggestions are pretty timeless and obvious advice along the lines of, actually be interested in what the person you’re talking to is saying, offer compliments when appropriate, make sure to be sincere when doing so, do your best to be pleasant company. Like most self-improvement works, the author often relies on the wisdom of the ancients and you’ll come across quotes from western philosophers and a couple Lao Tzu references, along with a bevy of 19th & 20th century political and business giants.
There are a couple insightful psychological points when it comes to trying to change someone’s mind, like always try to get a couple ‘yeses’ from the person you’re trying to convince before your contentious point to increase the odds they’ll agree, and to make your presentation a little more dramatic since our minds are most accustomed to storytelling as a mode of understanding.
While a lot of the anecdotes feel dated and some of the social etiquette doesn’t seem to apply anymore in this, the age of post truth and the death of outrage, the book is still a good read if not a little long winded. Here are some of my favorite quotes along with the basic key points he makes throughout the book:
IN A NUSTHELL SIX WAYS TO MAKE PEOPLE LIKE YOU
- Become genuinely interested in other people.
- Remember that a person’s name is to that person the sweetest and most important sound in any language.
- Be a good listener. Encourage others to talk about themselves.
- Talk in terms of the other person’s interests.
- Make the other person feel important—and do it sincerely.
IN A NUTSHELL WIN PEOPLE TO YOUR WAY OF THINKING
- The only way to get the best of an argument is to avoid it.
- Show respect for the other person’s opinions. Never say, “You’re wrong.”
- If you are wrong, admit it quickly and emphatically.
- Begin in a friendly way.
- Get the other person saying “yes, yes” immediately.
- Let the other person do a great deal of the talking
- Let the other person feel that the idea is his or hers
- Try honestly to see things from the other person’s point of view.
- Be sympathetic with the other person’s ideas and desires.
- Appeal to the nobler motives.
- Dramatize your ideas.
- Throw down a challenge.
On understanding over condemnation:
Instead of condemning people, let’s try to understand them. Let’s try to figure out why they do what they do. That’s a lot more profitable and intriguing than criticism; and it breeds sympathy, tolerance and kindness. “To know all is to forgive all.”
Carnegie wanted to praise his assistants even on his tombstone. He wrote an epitaph for himself which read: “Here lies one who knew how to get around him men who were cleverer than himself.”
On the power of the mind:
Thought is supreme. Preserve a right mental attitude—the attitude of courage, frankness, and good cheer. To think rightly is to create.
On appeals to the logos:
Few people are logical. Most of us are prejudiced and biased. Most of us are blighted with preconceived notions, with jealousy, suspicion, fear, envy and pride. And most citizens don’t want to change their minds about their religion or their haircut or communism or their favorite movie star.
On treading softly:
The Chinese have a proverb pregnant with the age-old wisdom of the Orient: “He who treads softly goes far.”
On the importance of asking “why?”:
[…] before asking anyone to put out a fire or buy your product or contribute to your favorite charity, why not pause and close your eyes and try to think the whole thing through from another person’s point of view? Ask yourself: “Why should he or she want to do it?”
J. P. Morgan on motivation:
J. Pierpont Morgan observed, in one of his analytical interludes, that a person usually has two reasons for doing a thing: one that sounds good and a real one.
This was a really enjoyable read. I was a little put off with the format at first, which is basically the author recounting various interviews he’s done for his podcast and a smattering of profiles on people he admires or has studied. After reading a few though, his analysis and commentary on the interviews became pretty compelling. James has started several businesses over his life and he makes it a point of studying the failures to see how he could improve from them. His interviews mostly summarize to do what you love, do it all the time, and do it to the best of your ability. Let everything else sort itself out. That, and always be kind. There’s no reason not to be.
Some of the quotes that resonated
On life in general:
I realized that I was an amateur. I had spent my life pretending to be something I wasn’t. I wanted to move beyond to that. TO:
- Have humility. Learn from everyone you can. Even if it’s just one takeaway.
- Be grateful for the many lessons you get, and realize that everything is a lesson.
- Only be around people you love and who inspire you.
- Life is a billion times smaller than the point of a needle. Don’t waste it doing things you were told to do. Do the things you love to do.
Health is the most important thing, else your body today won’t let you enjoy tomorrow.
- Every day, be creative. Creativity is a muscle. *You’re going to make mistakes, but 80% is always good enough. Keep learning the next thing.
- Life will constantly hit you until you are senseless. Don’t forget these are lessons.
On always be improving:
You need to find well-being from within. And here is what it is: FREEDOM RELATIONSHIPS COMPETENCE Increase those every day and you will find well-being.
So reinvention is:
- Defining freedom in different ways (reducing expectations, increasing sources of income so no one source controls you).
- Improving relationships. Plus, minus, equal: Finding mentors to teach you. Finding the next generation to teach. Finding friends who build you up and challenge you. This is your “scene.” Everyone going through reinvention needs a scene.
- Habits. It’s the 5×5 rule. You are not just the average of the five people around you. You’re the average of the five habits you do, the things you eat, the ideas you have, the content you consume, etc.
On the search for meaning:
“Find the thing you did where you lost all sense of time while you are doing it,” Chip told me. “Remember the equation from Victor Frankl’s Man’s Search for Meaning. “Despair = Suffering – Meaning. Find the things that bring you meaning. Suffering is always there in this world. But if you have meaning, you will have less despair. You will find your calling.”
On not stagnating:
The third day at the job, I got up and walked out. I didn’t clean out my office. I left my jacket there. I took the elevator down 40 stories. I walked out into the sun. And I never went back.
They called repeatedly. Even a year later the main guy was still calling. My life is better than ever. I never looked back. I left the building and walked to Grand Central. I took the train 80 miles. I watched the leaves turning from green to red along the way across the Hudson River.
On learning aggressively:
There are two ways to learn: passively and aggressively.
Passively is when you study your mistakes, read the history of what you are learning, network, find your “tribe,” find a mentor, etc. Aggressively is right when you are in the middle of it. You’re neck deep and the ball is coming at you: what do you do? Passively is in your head. Aggressively is noticing RIGHT NOW and taking action. In your head is important. But ACTION is what creates heroes.
It turns out that evolution is not about individual selection. We only survive as well as we function in terms of a group. When we are a strong part of a group, when we help the group, and when we use the group’s resources to become better as individuals, then we survive and even thrive.