top | item 2548621

HN: I want to trade my finance knowledge for python/django mentorship

78 points| zallarak | 15 years ago | reply

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.

44 comments

order
[+] irahul|15 years ago|reply
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.

[+] joelhaus|15 years ago|reply
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!

[+] makeramen|15 years ago|reply
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

[+] bfe|15 years ago|reply
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?
[+] zallarak|15 years ago|reply
thanks for the resources/info
[+] callahad|15 years ago|reply
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 :)

[+] zallarak|15 years ago|reply
Thanks! changed it. Nice, Ill shortly send you an email
[+] biot|15 years ago|reply

  > 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.
[+] jxcole|15 years ago|reply
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.

[+] zallarak|15 years ago|reply
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.
[+] porter|15 years ago|reply
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.
[+] DanielN|15 years ago|reply
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.
[+] alnayyir|15 years ago|reply
Thank you for reminding me to bug ez about stewardship of that.
[+] RockyMcNuts|15 years ago|reply
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/...

[+] ivolo|15 years ago|reply
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.
[+] math|15 years ago|reply
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/
[+] zallarak|15 years ago|reply
It is indeed, awesome suggestion
[+] unbracketed|15 years ago|reply
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?)

[+] zallarak|15 years ago|reply
Id love to do that, once my skill level allows for it. Thanks for the suggestion.
[+] megamark16|15 years ago|reply
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.
[+] alain94040|15 years ago|reply
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.

[+] geeksam|15 years ago|reply
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?).
[+] candre717|15 years ago|reply
^^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.
[+] ddispaltro|15 years ago|reply
This is an awesome idea, I love the fact it allows both learning parties "skin in the game", without a financial incentive.
[+] SkyMarshal|15 years ago|reply
Out of curiosity what opportunities do you see for programmers in options/futures? Anything besides algo/hft stuff?
[+] zallarak|15 years ago|reply
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.
[+] nikoftime|15 years ago|reply
Why not work for BrightScope.com? (financial analytics, python + django devs on staff)
[+] StepUpToTheMike|15 years ago|reply
Look up their CEO, Michael S Alfred, on FINRA brokercheck. That's why.
[+] zallarak|15 years ago|reply
I already have a job that I enjoy. But thank you for the suggestion.