Hacker News new | past | comments | ask | show | jobs | submit login
HN: I want to trade my finance knowledge for python/django mentorship
78 points by zallarak on May 14, 2011 | hide | past | favorite | 44 comments
I wanted to see if someone on HN is willing to mentor me through learning Python and Django. Below are some details on my current skill level, what I’m looking for, and what I can offer. I’m located in San Francisco.

I know what I'm offering is limited in value relative to what you are offering me, so I am open to give you anything else I could reasonably offer for this mentorship.

Current Skill Level: I know the basics of Python and have gone through “How to Think Like a Computer Scientist” and written some small scripts. I understand how Django works and have been through some simple tutorials.

What I’m Looking For: I’m looking for someone who could efficiently guide me through learning, i.e. what tutorials/projects/resources I should go through. More a mentor than a tutor. Maybe we’d meet once a week to code small samples. I would email you for help if I got stuck.

I do already spend time self-teaching, but I think I could learn much more efficiently through someone else’s guidance. I think this, because I have self-learned a lot of things and have found with a little guidance, things go substantially quicker.

What I can offer: I can teach/guide you through learning:

- Account Fundamentals (understanding the 3 financial statements and how they flow together; balance sheet, cash flows and income statement)

- Interest theory, fixed income/debt/bond valuation

- M&A analysis and Valuation (Discounted cash flow, comparables/multiples, accretion/dilution)

- Options/Futures fundamentals (I think there is potentially an opportunity for adept programmers here to apply their skills).

- Bankruptcy/distressed corporate situations

- Crash course on how to dig through and interpret SEC filings (the only reliable free primary data source if you want to invest in public markets)

Why would you need these skills? I think they are crucial if you are:

1) An entrepreneur who will ever raise capital or sell your company

2) Someone interested in learning how to invest in the public or private markets – this knowledge will serve as a solid foundation/prerequisite

3) Someone in optimizing the financial efficiency of their business

I’d like to think I am at least acceptably good at teaching. I used to tutor economics, accounting, SAT prep, etc. and have received good feedback.

Credentials: I’ve worked as an M&A/restructuring analyst at a reputable investment bank and have had offers from well-known financial institutions/hedge funds. I’ve also had the fortune to have some excellent mentors in my past. I can provide more details if you want over email.

My email is in my profile, I look forward to hearing from you.

ADDITION: email added to profile.




If you find someone to pair with you, great.

If you don't, finish the django book http://www.djangobook.com/en/2.0/ and start fiddling with Practical Django Projects http://www.apress.com/9781590599969. It's a decent book and gives you a feel of some real applications.

There always is stackoverflow and mailing lists if you get stuck.

You can also hop in #django on irc.freenode.net. Sometimes people on IRC can be a bit hostile but if you do your homework before asking questions, they are generally answered.

You also need to know if you are taking up on a real world project, you would need to learn other technologies - Javascript for client side interaction, html/css for UI. Django/Python are just one piece of the puzzle.


if you are taking up on a real world project

I think this can be an important motivating factor. Are there any popular open source projects written in Python (or built on Django)?

For example, back in 2005 I setup a personal Wordpress install on a Dreamhost server (also coming from a finance background, with some prior HTML experience). Wordpress did most, but not everything I wanted it to do. As a result, I've become quite familiar with the LAMP stack over the years, turned that knowledge into a business and made a buck or two. A similar project in the Python world would be a great introduction, but at a cursory glance, Django seems a little too low level. If I'm wrong about Django, please correct me and I'll jump right in.

P.S. On a side note, it's definitely wise to seek out a mentor... after making enough money to hire a programmer for the business, my knowledge level really took-off. Up until then, getting things coded up could often be a very long and tedious process. Good luck!


I second the Django Book. I'm no CS major, but I've done a lot of Java/Android dev and read a bit about python in the past. With the Django Book and the awesome Django documentation, I felt like I knew most of the ins and outs of Django with just 2 full days of reading/tutorials. It's a very well documented framework and quite easy to pick up.

I'd be willing to answer any questions about Django on your quest for Django mastery. I'm no Django pro, but I'll help where I can. Feel free to email me: vince@[HN_username].com


How significant an issue is it how old these books are? The Django Book is from 2007 and predates even Django version 1.0, and the "in progress" second edition on the website has its last update in March 2009. Practical Django Projects is from 2008. Do these books have enough special sauce relative to up-to-date Django 1.3 documentation and tutorials to be worthwhile?


Do not waste your time with The Django Book. The Django docs are epic, and what you don't understand you can usually get assisted with on StackOverflow or in #django on freenode. Also, find a website you use a lot and create a clone of it in Django. You'll find that to be more educational than any generic tutorial.



Thanks, that is helpful. It indicates there were bigger changes from 0.9 to 1.0 than any since then; The Django Book is based on 0.9, so maybe it isn't worth spending time with now.


Practical Django Projects got an updated second edition in 2010 which would be a good thing, but...

It's unfortunately sort of half-finished. The author clearly lost interest halfway through. The accompanying github repo was never finished, but luckily at least some readers forked it and finished it.

It's a very decent book for the most part, but I hesitate to recommend it.


thanks for the resources/info


Just a heads up, the "Email" field in your profile isn't publicly visible. Instead, you'll want to put your address into the "About" field.

That said, I spent a few months last summer teaching some interns how to use Python and Django, with reasonable success, and I'd be more than happy to spend a few hours a week helping you out. My email address is in my profile :)


Thanks! changed it. Nice, Ill shortly send you an email


  > I know what I'm offering is limited in value relative to what you
  > are offering me, so I am open to give you anything else I could
  > reasonably offer for this mentorship.
Don't undervalue your skillset. If I were a python guru, I would immediately take up the offer and help you out quite a bit for what I would be getting in return. It's just as true that anybody could go online and learn all that "finance stuff" as they could learning all that "python stuff". The value for both subjects is in the mentorship to guide and accelerate the learning. It's not like you're offering home cleaning tips in exchange.


Cool idea. An exchange of knowledge. Sadly, I neither live in San Fransisco nor am I an expert in Django/Python. However, I have a general question for you:

For those of us who are unable to pair with you, do you have any recommendation on articles/books we could pick up that you think would help us learn more about finance? Is there a "How to think like a financier"?

Thanks in advance.


Id be glad to. Initially, the best thing to do is master financial accounting. Any financial accounting text book should do (the one i learned from is unique to my school unfortunately, but it was an excellent book, if I find a link to it Ill post it). It sounds tedious, but its pretty important to know this before anything. If you give me an idea of where you are, I could give you more relevant resources. If you are starting from a blank slate, this is the best place to start.


I have degrees in finance and economics and worked in banking for a few years. Skip the heavy advanced texts and get Essentials of Accounting by Anthony and Breitner.


My guess is you will get some emails directly from this post, but I would also recommend you check you HN office hours ( http://hnofficehours.com/ ) it's basically what you're asking for but for the exchange part.


Thank you for reminding me to bug ez about stewardship of that.


Been going through a similar process, here are some links

highly recommended - MIT OCW Python course

http://ocw.mit.edu/courses/electrical-engineering-and-comput...

Learning Python, Fourth Edition, By: Mark Lutz http://my.safaribooksonline.com/book/programming/python/9780...

Official docs and tutorial http://docs.python.org/tutorial/index.html

A couple of others http://personalpages.tds.net/~kent37/stories/00020.html

http://diveintopython.org/

Django - official docs and tutorial http://docs.djangoproject.com/en/dev/intro/tutorial01/

Have started some work with this Django book but jury is still out http://my.safaribooksonline.com/book/web-development/django/...


I am an MIT student, and would not recommend 6.00 OCW. I've tutored a few people taking 6.00 and found their explanations over complicated and problems filtered with unnecessary details. Reading a book would be preferable.


For anyone who is a good self learner and wants to acquire this knowledge, i'd highly recommend the Chartered Financial Analyst (CFA) curriculum, which, as an added benefit, is a (the?) globally recognized financial qualification. The material is excellent and it's not very expensive to take the exam. Assuming you don't plan to get into investment banking, just do the first year which is about 2 months intensive study (+- some factor depending on your base knowledge). It's a very efficient way to acquire this information. http://cfainstitute.org/


It is indeed, awesome suggestion


I understand Python gets some mileage in the financial industry, particularly by quant/analyst types. I'm aware that NumPy and matplotlib see a lot of action - are there other open source packages that get a lot of traction? Are there contributions from companies that find their way back into the larger open source ecosystem?

I came to suggest that as an aid to your learning you could focus your attention on using, evaluating, and writing Python packages related to finance. There doesn't seem to be a lot out there: http://pypi.python.org/pypi?%3Aaction=search&term=financ...

Examining packages like this where you already have a handle on what the code is supposed to be doing might be a good way to consume a lot of (hopefully some good, and probably a lot of not so good) Python code. Regardless of if you find a local mentor, contributing to or writing your own open source packages should prove to be a very valuable experience. Perhaps you could even start a package or set of general packages related to finance. Sort of like what SciPy is to NumPy. (FiPy?)


Id love to do that, once my skill level allows for it. Thanks for the suggestion.


Hey, I've already got an accountant (sister in law) and lawyer (father) to help me out, but I'd love to just have you as a friend and person I can turn to for advice when needed. I work with Python and Django all day (and night, my startup is built on Django) so I think perhaps I can be of assistance. Email's in my profile, feel free to contact me, IM me, whatever if you'd like some 1 on 1 django or python help.


Likewise, and thank you.


I was thinking of trading one day of code against one day from a graphic designer. Is that a trend, bartering for skills? This could be a great way to help each other out.

The way I would make sure the bargain is fair is by basing it on time. That's why I say start with one day. Then it's just a question of how skilled we each are, but worst case, I lost one day to code in exchange for an ugly design. I can live with that.


There's also hackerbuddy.com, which exists to pair up wannabe hackers with wannabe mentors. Might not help you find someone local, though. For that, user groups are the way to go. Looks like there's an SF Python Meetup group that meets somewhat irregularly, and BayPIGgies down in Mountain View (which makes for a late night on Caltrain, but maybe once a month that's okay?).


^^Agree. Check out meetups and hack-a-thons. Contact any hacker spaces if there are in your area. Look at startup sites and email lists, e.g. StartupDigest. Go to one or two meetups/ dev. events and make friends. BYOC - Bring your own code. It helps if you have something started already - show that your serious.


This is an awesome idea, I love the fact it allows both learning parties "skin in the game", without a financial incentive.


Out of curiosity what opportunities do you see for programmers in options/futures? Anything besides algo/hft stuff?


The hft stuff is actually what I'm most skeptical of. I think the barrier to entry is huge in terms of knowledge and initial costs, unless you are an outlier. The opportunities are in more basic things. Mixing a decent quant background with a solid financial background is a potent combination for succesful fundamental value investing. Creating an automated tool to help structure the best ways to get equity exposure using options based on live data is another immediately foreseeable benefit.


What are those initial costs? Say I have the knowledge or ability to acquire it, how would I actually go about connecting myself to the great stock feed via (e.g.) Python?


I don't know. It's something I know very little about. I speculate that you have to buy a seat or subscribe to a service at a major stock exchange (very expensive) or work through a third party/broker (still pretty expensive, but also less efficient). The reason behind my skepticism is that the only people I know making sustainable (and great) money from it have very deep pockets to begin with or are huge established players.

I was once visiting at a quant fund where they purchased an office building to get physically closer to a stock exchange. It was very expensive real estate and they were a massive fund. They had a lot talented people. Hard to compete with that.

I also read in the Economist a while ago (not sure if its really true, but its believable) that hedge funds are the largest consumers of computer processors in the US. But again, this is something I know very little about. I could be wrong.


if you want to play in HFT you want 1) wicked chops 2) collocation with exchange computers to pick up nickels faster than anyone else (was going to say sub-millisecond but my knowledge is not that granular) 3) access to historical tick data to analyze, which is expensive to subscribe to and manage (was going to say petabytes but my knowledge is not that granular)

The way to think of a big part of HFT is really just automating the old function of market-making, adjusting the bid-ask on many securities to keep things in line.

In the old days if you wanted to trade, you called a broker who took it off for a price, the bid-ask, and you tried not go get ripped off too much. Now institutions who want to trade look for ways to feed them into the maw of HFT without getting ripped off too much, and HFTs try to figure out how to get as much of a bid-ask as possible.

Surely the biggest consumers of processing power are the data centers of Google, Amazon etc... Places like Goldman have sizable clouds but I don't think they compete yet.


"was going to say sub-millisecond but my knowledge is not that granular" <-- round-trip times are, to 90th percentile, sub-100-microsecond at colo

"was going to say petabytes but my knowledge is not that granular" <-- entire market data is sub-100GB per day.

" have sizable clouds but I don't think they compete yet." <-- cloud computing is not used in HFT


"work through a third party/broker (still pretty expensive, but also less efficient)" <-- there are a glut of brokers and a lack of market participants, so the costs have naturally fallen. 250K will get you time and tick on 4:1 leverage

If you are really interested, it would make sense to start now before rule 15c3-5 kicks in


There are plenty of "retail" ways to get access to this data, both realtime and historical. For realtime data and trading API access, interactive brokers provide a good service. For pure data feeds, both realtime and historical, check out esignal, cqg or iqfeed.


IB data isnt the actual exchange data. For example, on nasdaq, the raw data is the ITCH tick-by-tick data.

iirc iqfeed gives you a normalized data format.


Yeah, the quality isn't the same as a proper feed but i guess the cost doesnt compare either. CQG seem to do pretty good feeds but i've never tried them


$350K soup-to-nuts.


check out this blog for a start:

http://epchan.blogspot.com/

there are plenty of ways to trade without heading into the HFT world.


Why not work for BrightScope.com? (financial analytics, python + django devs on staff)


Look up their CEO, Michael S Alfred, on FINRA brokercheck. That's why.


I already have a job that I enjoy. But thank you for the suggestion.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: