Old Focus 01/08/16

This is my nownownow entry from January 8th, 2016. To see what I’m focused on now, go here.

Learning to Code

I’ve learned Ruby on a basic level now. I’m having a really good time solving scaleable math problems.

Before applying for App Academy, I want to exhibit excellence in basic Ruby coding. To do this, I’m reading books on Ruby, playing Ruby games and going through external tutorials (also, Ruby monk and Koans.)

Learning to code has changed the way I think about things. I love it. Even if AppAcademy turns out to not be a great fit, I’m going to continue to get good at this skill. The opportunities in the open source community and solving problems in a scaleable way is far to interesting to not get involved. I’m hooked.

 

Our Business

Our company is called Freedom Podcasting. We offer podcast production services and podcast editing services:

We’re focused on ensuring that we have the bandwidth to bring on more clients while ceaselessly creating excellent, chart topping podcasts.

 

Video Editing

I’ve completed the video editing for our YouTube series which documents our trip across the country in 2015. The next step will be to do a welcome video for the series.

Embedding 3d Scripts to make Websites Engaging

I’d love to be able to embed elements like this into the backdrops of websites to make them look really amazing and futuristic. This one is a bit dramatic and would be distracting…. but if I could slow it down and make the moving shapes low contrast, I think it would make an amazing website. Maybe a good one page element for a data science company or something like that.

See the Pen Nonsense Clocks by Zevan Rosser (@ZevanRosser) on CodePen.

w1 – App Academy Bootcamp Prep Wrap UP

160 Spear Street
The first week of AppAcademy bootcamp-prep is behind our class.

Even though I spent the first few months of the year studying the subject matter in-depth, I’m still finding this class to be useful. Let’s talk about some benefits:

First, it’s great to be around people who are actually good at computer programming. As I was walking home after the first day of class, looking up at the big glass buildings, I realized something crazy. That day was the first time I’ve actually talked with other computer programmers.

I’ve done lots of web development with our podcast production company, but never really met anyone who had a deep appreciation of iterative thinking and back-end languages like Ruby and JavaScript.

So it was surprising to actually sit down and enjoy a conversation about the details of what makes different functions better than others, even when the results are the same.

The Good

Bootcamp Prep is great because we take it slow. I think learning thinks like loops, arrays, variables, strings, objects, NaN and many more basics of programming, are going to be critical to a programmers success. I’m happy to go over things again and again.

It’s helpful to learn these elements from different people too. It’s great that a/A has video lessons from other professors, not just our main, in-class, professor. Learning from others helps me see the subtle nuances which might have eluded me on the first pass.

Sure, I can solve that problem with a for loop… how do you do it with a while loop. This stuff should be like walking forwards or backwards to a programmer.

The Bad

There is a style of teaching in which people who are knowledgable ask questions to those that don’t know the answer. There are these long pauses and I don’t think it works well for programming. It’s great for philosophy or some social sciences, but in programming the answers are to specific. Here’s an example:

Teacher = T | Student = S

S – Why is my loop causing my terminal to go blank?

T – You’re forgetting to iterate your while loop. Do you remember how to iterate?

S – (long tortured pause, starring at impossible code)…

 

This goes on a lot. I think there is a better way to do it. It’s all about speed. Here’s how I think it would be more effective.

S – Why is my loop causing my terminal to go blank?

T – You’re forgetting to iterate your while loop. Do you remember how to iterate?

S – (short confused pause)

T – Ok so with while loops you need to write in an iterator. Here is how to write a while loop to iterate from 4 to seven:

i = 4
  while (i < 7) {
  console.log(i)
  i += 1
}

T – Now type in node + the file name and run that code. Ok, so you want this while loop to be part of your muscle memory. You want to be able to type this without looking at a screen. So do this 5 times for the following iteration: 10 – 20, 20 – 30, 30 – 40, 40 – 50, 50 – 60.

S – (goes off to typing things really quickly)

App Academy View

Week One is Done

The best thing that has helped me this first week is hard work.

I’m going over every note, every video and doing every problem available 2-3 times and I’m doing them in different ways. Before each class, I work on the problems we will have at the end. That way I know the sticky parts before they come up in class.

Luckily, I’m loving the process. I love writing programs. I love solving the problems and I love the pressure of tests.

See you next week.

Ruby Monk Notes

Now I’m just keeping notes of my learning process while moving through RubyMonk.

Thus far, RubyMonk has proven to be a slightly more challenging learning experience as the system demands more of your intuition. They’ve done an excellent job at allowing the learner to get unstuck with a hint. It’s good that they do that, but they also make it clear that using the hints too often will cause you to not learn the material well enough.

I thought it was fairly funny after I answered a question that counts the length of strings in an array. I wrote code that works, it’s commented below, but the answer was much shorter. Check this out, it’s embarrassing for me:

# My code:
# 
# def length_finder(input_array)
#   length_array = []
# 
#   idx = 0
#   while idx < input_array.length
#     length_integer = input_array[idx].length
#     length_array = length_array.push(length_integer.to_i)
#     idx += 1
#   end
# 
#   return length_array
# end
# 
# puts length_finder(['Ruby','Rails','C42']).to_s
#
# Their code: 

def length_finder(input_array)
  input_array.map {|element| element.length}
end

This is actually one of my largest hangups is this style of { |x| x do y} code. I don’t quite understand it so I’m grateful that Ruby Monk is making it a priority now.

Here’s how to use that syntax to delete the even numbers:

[1,2,3,4,5,6,7,8,9].delete_if{ |i| i % 2 == 0 }

Simple. Clean. I like it.

Interesting. From all my studying earlier, we never used >> to push elements to arrays. RubyMonk says it’s the most common way, but I’ve always used .push(“string example”) to push elements to arrays. Good to know.

TransferWise Review – International Money Transfer Case Study from USD to AUD

TransferWise Review - From USD to AUD

The banks are out to get us. I’m seeking ways to fight back. International money transfers are one of the banks little secrets. TransferWise says they can save us. So I tried them. Here is a TransferWise review.

TransferWise Review

Planet Money did a great piece on the invisible financial pipes that move money. This was part of their “t-shirt project.” In it, they talk about the Automated Clearing House (ACH) and what it took to move money from their Kickstarter (e.g. Amazon) to their Chase Bank account. Note: Listen to that podcast. It’s excellent.

In Australia, the banks just offer free money transfers. That’s right. It’s free in Australia with bank apps on your phone. Apps like Cash and Venmo are making it easier in America. Transferwise is the only place doing it internationally right now that I know of.

We’re moving money to Australia this month. We’re going to be testing TransferWise.com to see if we can save ourselves some fees.

A Transferwise Review

A long time ago in a….

TransferWise came across my desk a long time ago in a paid advertisement on Facebook. I clicked through, but didn’t need to move money at the time. After bookmarking the page, I was excited for the opportunity when I would need to move a good amount of money internationally.

November 20th, 2015

Today was that day I found a need to move money from the USA to Australia.

The Transferwise steps were easy to follow. They have a pretty good UI on the surface, but it wasn’t perfect…

I noticed some strange glitches in their software. At one point, it seemed as if I saw someone else’s screen before it flashed back to my screen. Very strange and disconcerting when you’re moving large amounts of money. This happened a few times. It’s a glitchy user experience.

By the way, I’m moving about $4,300 USD from a CapitalOne account to a Commonwealth Bank account. To clarify, thats a United States savings account to an Australian checking account.

I was able to generate a code on the CapitalOne online banking login and use that code to authorize the transfer with the TransferWise.

To my dismay, I learned that the transfer will take 1-5 business days from CapitalOne to TransferWise. Also, my Australian bank will also require 2-3 business days for the money to clear in that account. So 3-8 days in total to move some digits across a line.

Ahhh the wonders of the modern financial system.

Anyways, I clicked transfer and the deal is in action.

As I go back to the site to check the status of the transfer, they have this cryptic page that doesn’t tell me information about fees. I’m unsure of the fee schedule. I can ascertain the conversion rate because they tell me the amount I’m transferring in USD and what we will receive in AUD:

  • $4,300 USD/$5,923 AUD = Which equals a rate of .725 AUD/USD
  • .72 AUD/USD is the mid-market rate as reported by Google

Testing Transferwise vs Midmarket Rate

So it looks great.

I’m in it now. I’ll wait 1-5 business days for CapitalOne to release the money to TransferWise. Then I’ll wait for however long it takes for the money to move through TransferWise to CommonWealth bank. Finally, I’ll wait 2-3 business days for CommonWealth to clear the funds on their end.

 

November 24th, 2015

Four days have passed.

The transfer has come through. It all cleared. Here is a screen shot of what I’m seeing via the dashboard of the Transferwise website:

Transferwise Screenshot for Case Study
I’ve blacked out my wife’s name. Nothing more.

Transferwise (as per the screenshot above) tells me that the transfer was completed for $5,923.79 AUD.

Commonwealth Bank Transaction Details

 

The amount shown in Commonwealth bank is $5,923.79 AUD.

The deal went through. They transferred what they said they would! Huzzah!

Deconstructing the International Money Transfer via TransferWise

This is the actual rate we experienced transferring from CapitalOne in the United States to the Commonwealth Bank in Australia:

$4,300 USD / $5,923.79 AUD = $.72588 USD/AUD

The mid-market exchange rate from Yahoo Finance saw a low of $0.7187 AUD/USD and a high of $0.7216 AUD/USD the day of the transfer. Here is a screenshot:

Transferwise review Mid-market rate vs actual transfer rate

So depending on the time of transfer, that $4,300 USD would have exchanged at a low of $5,983.03 AUD to a high of $5,958.98 AUD.

Here is a table describing the actual mid-market rate vs. realized exchange rate from the transfer:

The Day’s Price Point Mid-market rate at $4.3k USD Realized from Transfer Amount Unaccounted for in Transfer
When Market was Low  $5,983.03 AUD $6,023.25 AUD  $40.22 AUD
When Market was High  $5,958.98 AUD $6,023.25 AUD  $63.27 AUD

So the real cost of the money transfer was between $40-64 AUD (or $28-46 USD).

Free. Nope. Better than the banks? Good question.

November 24th, 2015 (Later that Night)

I received a receipt clearing some stuff up. This was my mistake. I get way too much Email and this was buried in the fray.

Here is a screenshot of it:

TransferWise Review - Final Receipt
I’ve blacked out my wife’s Email. Nothing more.

Conclusion

My guess is that the banks would offer a less attractive rate and also tag on a boatload of fees.

Transferwise did work. The ordering process was easier than going into the bank and talking to a teller. I will use it again next time I transfer money internationally.

Finally, they gave me a coupon code. If you want to use it, you could wire your first 3,000 GBP (roughly $4,500 USD) for free. If I had this code when I made the transfer, I would have actually realized the mid-market rate.

Here is the coupon code. I don’t think I get any benefit from you using this code so don’t think this is some affiliate deal and I wrote this article just to send you to TransferWise.

I wrote this article because I think international business needs to be cheaper, faster and more modern.

For future readers, if the above code doesn’t work, please let me know in the comments and I’ll remove it for future visitors.

Updated November 20th, 2015 – Gold Coast, Australia

How to Write an Effective Couchsurfing Request: Inspired by Failure

We love to put couch surfers up in our place. It’s great to have traveler’s come through because they have interesting perspectives and it’s great to make the connections. The truth is that I deny about 90% of the people who reach out to me. Why do I shut most people down? It’s because of messages like this:

Hey, i am travelling a backpacker tour from Sydney to Cairns. And i want to stay two nights in Surfers Paradise. Is it possible that i can sleep at your’s?Pleas call me, because i have not allways Internet, only when there is a free wifi. (his phone number)best regards (couch surfer)

Hey everybody, let’s count the mistakes:

  • 1st = Hey,

So this guy didn’t even bother to write my name in here, that tells me he could be copying and pasting this to everyone on the Gold Coast. Where is the improvement opportunity? Mention the person you are writing to.

  • 2nd = I am traveling a backpacker tour from Sydney to Cairns…

You know what? Everyone seeking a couch to crash on in the Gold Coast is doing that. Want to know another thing? I don’t care. Where is the improvement opportunity? Don’t say mundane, un-inspiring things that matter nothing to the person your hoping to mooch off of.

  • 3rd = I want to stay two nights in Surfers Paradise…

Great, I want a business that cashflows $10,000 a month, a ranch on the beach and a quiver of surfboards. I don’t care what you want. Where is the improvement opportunity? Start with the value you bring to the interaction. Example: “You guys would love my cooking because I make a fantastic German schnitzel ” You see what I did here? It’s not about what you want couch surfer, it’s about telling the dude with the couch that your presence isn’t going to be a friggin headache!

  • 4th = Is it possible that I can sleep at yours?

Check the profile of the couches you are surfing. We offer people a really nice queen bed dummy, not a couch. Where’s the improvement opportunity? “I read that you guys have a bed to sleep on and while I would totally appreciate that, I’m super easy and I’d be happy to sleep out back on the grass.” You see what I did here? With this statement, you make a point that you read about the couch while reaffirming that you aren’t going to be a soul sucking drain on life while you couch surf.

  • 5th = Pleas call me, because i have not allways Internet, only when there is a free wifi.

Sure dude, I’ll call you. I love calling stranger vagabonds with absolutely nothing to offer. Get lost. Where’s the opportunity for improvement? “Though my access to internet is going to be spotty over the next few days, I’d be honored to connect in anyway possible. My phone number is 0404533938 but if you just reply to this message with your number, I’ll be happy to text you when I get into town.” You see what happened here dummy? You explain the situation and offer a solution that doesn’t require the couch baron to do extra work to get your lazy tail to his place. Oh and texting is the way to go. “Please call me”? I hope you like the $30 crappy hostel in Surfers.

  • 6th = best regards,

Tips on CouchSurfingReally? best regards? You couldn’t even be bothered to put a capital letter at the front? Where’s the room for improvement? Look dummy, proper CouchSurfers sign off with better salutations. Next time try: -With Awesomeness -Wheeeeeeee -Graciously -Excitedly – YOU ROCK!

So yeah, your CouchSurfing request was a 100% failure. With luck, I hope someone else reads this and is inspired to have an excellent request and experience with CouchSurfing.
Now here’s the interaction part. Write a compelling CouchSurfer request in the commment section below. Winner gets a pizza.

I Got Robbed: Pick Pockets are Good in the Philippines

 I Got Robbed!

The other day I got my iPhone 4 stolen right out of my pocket without me even knowing. Don’t worry Mom, no violence occured… but I got duped. This is the first time I’ve ever been duped and I hate it.

Here is the Story

I was riding in a Jeepney from my home to my favorite coffee shop at the Baniland Town Center in Cebu City, Philippines. The Jeepneys are interesting old Jeeps left over from the American presence in  World War II (I film some of them in this video.) Since the 1940’s they have been outfitted with  two rows of benches running parallel with the street, pointing inwards towards each other. These are the home made passenger vehicles of the Philippines. I was listening to an internet business podcast on my iPhone with my apple earbuds, while sitting on the passengers side bench.

To signal the driver to pull over in a Jeepney, the passenger uses coins to tap the handrail which is welded to the ceiling of the vehicle. With a loud “Tack-Tack-Tack” sound, I announced to the driver that I wanted to get off. There was a commotion and I assumed the cause to be me requesting a pull over in the wrong spot.

Three little guys sitting in front of me, to my left and right began talking quickly in a strange dialect. “aba aba aba Country Mall yada  blah blah.”

Mad Streets in the PhilippinesI couldn’t understand them of course, and I still had no real understanding of how this mad Jeepney system functions, but I knew the Country Mall was just a 3 minute walk down the road from where I wanted to go so I just chilled and waited for the Country Mall stop.

As the Jeep was pulling into the Country Mall Jeepney bay, one guy sitting directly across from me on the drivers-side bench reached down between my legs in, what I thought was, an effort to find a coin I had dropped from my pocket. He seemed to have a hard time picking it up and then showed me the coin and offered it to me while trying to say something. I couldn’t hear him so I took my ear buds out to listen to what he had to say. I couldn’t understand him and refused the 1 peso coin he had seemed to find between my legs.

All of the sudden, the guy next to me was pointing out that I had a piece of gum stuck to my shoulder. Again, I assumed that these were nice guys alerting me that I had leaned into a piece of chewing gum that had become stuck to my shoulder.

By this time the Jeepney had pulled up to the curb and I got out of the Jeep to pull the gum off my shoulder and toss it in the bushes.

Then I checked my pockets as I normally do to make sure I had everything in order. My heart sank. Surprise surprise, no iPhone.

Challenging Philippines SidewalkI immediately assumed it had fallen out of my pocket on the jeep so I ran over and leaped into the back of the jeep which had started pulling away. I searched around for the iPhone in the place where I was sitting. It wasn’t there and the other passengers were scared of me as I started yelling like a neanderthal. They pointed across the traffic ridden road trying to tell me that someone had taken my iPhone in that direction. I got off the jeep looking around for something to chase. I was ready to be like a lion chasing down some gazelle-like thief through the jungles of urban Cebu.

The witnesses were pointing down a dark ally surrounded by shanty style dwellings and rum vendors. What was I going to do? I don’t remember what the guys looked like. I couldn’t run after them too effectively anyways; I had a decent sized backpack on anyways. It would be like chasing a needle in a hay stack…

…no, it would be like chasing a needle in a needle stack. I was screwed.

The End

Thanks for reading. Leave some comments below and berate me for my foolishness!

🙂 -ian