Python Internals: PyObject
gahcep.com
gahcep.com
As an aside, you are one of my main sources of inspiration. I was a high school dropout with several terms of failing out of community college courses, but after reading your PhD Grind series/book, I'm now a (nearly) straight A student and am very determined to go as far with my education as I can. I would be honored to help you in any small way I can to express my gratitude!
Thanks again for unknowingly improving my life.
While watching the series for second time - I started taking some notes/hints. Here its: http://giis.co.in/c_py_notes.txt Its more like hints. one need to watch video to understand this small note. (sorry for typos/mistakes)
thanks again!
EDIT: with youtube offline mode, I saved some video on smartphone & then while going for evening walk, I was listening to it, Got better in health & python skills at the same time :D
The thing that is handled by PyVarObject are types whose instances can differ in their size, with tuple and bytes objects being probably most common cases when it is used.
I really want a job where I find performance bottlenecks in research or business analytics or financial analytics code, migrate parts to robust Cython implementations, and then build and maintain the broader Python libraries and APIs surrounding that.
But what I'm unfortunately finding is that basically nobody uses this stuff anywhere in practice. I've interviewed at a ton of places doing everything in C++ entirely, and I just see their code and I think, my god, why would anyone choose this? You can write the critical stuff in C++ just as you are, and then so easily wrap it for Python, then write the other 99% of the code in super easy, dynamic Python, even with various kinds of validating systems, or using typing and type annotations to avoid certain kinds of bugs, and just everyone's life is easier.
But they are just so entrenched in the old way of doing it that nobody is willing to try.
I've been consistently amazed at how few jobs in the monthly Who Is Hiring thread are tagged even just with NumPy. I think I've seen maybe one job in 6 months that mentions Cython, and then I found two others outside of HN and the interviews with those places didn't work out.
How to find a job doing this stuff is like my main vexing work problem at the moment. It's so useful, but it's sort of locked outside of some kind of energy barrier that quant teams seem unwilling to cross.
Now, Python extensions can be a bit hard to get right. Especially since Python has a specific threading model and if you are trying to wrap an existing C++ code base that is multithreaded in Python... it can be challenging.
Anyways, best of luck with your quest.
Since you really want to write C and Python... Do you care if you have to write trading code to help billionaires make more money?
The trouble I find is that a lot of small-to-medium sized asset managers and hedge funds don't have very good technology practices in general, and are pretty far from sophisticated use of low-level Python. There are often a lot of political reasons why they cling to Excel/VBA, R, or MATLAB, and there's almost always some political battle happening between the people that want to rationalize the system to a proper software design, and people who just want to keep cranking on the hodge podge of existing tools.
I'd probably be fine with some trade-off regarding all of that, if the pay was acceptable and there was a strong commitment to a healthy work/life balance. But among finance firms this is extremely hard to find.
So even though I am not at all opposed to doing this work in finance, I still find the volume of acceptable job openings in that field to be too small to make it realistic.
Do NOT work on Quartz or Athena or WSQ.
I have worked on two of these. I have seen the code for all three. These systems have too many WTFs to count.
They have lead to technical crisis at both JP Morgan and Bank of America Merrill Lynch. At Bank of America Merrill Lynch, the crisis lead to resignations of the chief architect and the CTO.
Stay away.
This is not a controversial opinion, nor really even a swipe at anyone. It's just bad, bad, bad code inside of banks.
I remember talking to someone on the Athena team during a job interview there and they told me that they had to fill out paperwork and wait weeks for approval just to pip install a third-party package for a sandboxed and not-production-facing ad hoc data analysis task. I don't care what industry you're in, that's just taking bureaucracy way too far. I've worked in quant finance before in a highly regulated environment, and there was never the slightest worry that you couldn't just grab any third-party tool you needed to do your job. Getting into production would require a big process, sure, but not just grabbing pandas, say, and answering someone's quick ad hoc business question. In fact, this sort of thing also was never a problem in defense research either.
Anyway, I personally view the fact that the team who spun out of I believe Goldman originally to make the Athena/Quartz/etc stuff (I think now they are even infecting smaller banks like PNC with it too?), is easily one of the worst things that has happened to the world financially in the past 15 years. Sadly not hyperbole.
I found that the particular combination of start-up environment and consulting was not a good fit for me, and I suspect I would feel the same about Enthought or other kinds of analytics consulting companies, so alas this is not an option for me.
https://www.continuum.io/join-us-empower-people-solve-worlds... - I haven't worked here personally but have heard good things.
Both are in Austin, Texas.
So unfortunately these types of options aren't likely a good match for the sort of work I am looking for.
For a quant role, even if in the end it is likely to involve a lot of hardcore low level coding, you're (generally) expected to have a PhD in math/phys/stat/eeng though, that's the rules. For developers roles I don't know all the details. But one thing for sure, we're hiring for quant roles pretty aggressively right now :)
Are there any openings (that would sponsor a visa) in the Ireland office? I'd love to apply and think SIG could be a good fit, but I've just had no luck responding to the Stack Overflow ads from the Philly office.