HN user

mace

4,158 karma

python, golang, erlang, elixir, c, and javascript hacker.

Posts232
Comments103
View on HN
m.signalvnoise.com 6y ago

My Polyglot Advent of Code

mace
1pts0
www.cooksillustrated.com 7y ago

Testing the June Intelligent Oven

mace
64pts40
neopythonic.blogspot.com 10y ago

The AnyStr type variable

mace
2pts0
medium.com 10y ago

Why I made an open source model zoo

mace
2pts0
markdownplease.com 10y ago

Markdown, Please – instantly convert websites into Markdown

mace
7pts2
www.youtube.com 11y ago

H̶a̶l̶f̶ ̶a̶ ̶b̶i̶l̶l̶i̶o̶n̶ 600M unsuspecting FreeBSD users

mace
4pts2
sphincs.cr.yp.to 11y ago

SPHINCS: practical stateless hash-based signatures

mace
32pts11
stackoverflow.com 11y ago

Difference between OOP interfaces and FP type classes

mace
1pts0
www.youtube.com 12y ago

What can Python learn from Haskell?

mace
6pts0
ghcformacosx.github.io 12y ago

Haskell for Mac OS X: Self-contained relocatable GHC builds

mace
3pts0
www.quora.com 12y ago

Would you use Erlang again?

mace
5pts0
web.archive.org 12y ago

Original Dropbox Screencast

mace
2pts0
qconsf.com 12y ago

How a Small Team Scales Instagram

mace
1pts0
www.youtube.com 12y ago

Creating Soundslice (XOXO talk by Adrian Holovaty)

mace
2pts0
www.youtube.com 12y ago

Go for Python Hackers

mace
1pts0
groups.google.com 12y ago

Deconstructing Twisted's Deferred

mace
3pts0
www.youtube.com 12y ago

Jeff Bezos on Amazon, Entrepreneurship, and Selling Books Online (1998)

mace
2pts0
www.youtube.com 12y ago

Docker: The future of Linux Containers

mace
1pts0
github.com 13y ago

Dependency Injection for Python

mace
37pts52
effectivehabits.quora.com 13y ago

Pick the right metric to incentivize the behavior you want

mace
2pts0
pyvideo.org 13y ago

PyCon 2013 Videos

mace
240pts48
jlouisramblings.blogspot.com 13y ago

How Erlang does scheduling

mace
2pts0
kotaku.com 13y ago

The Exceptional Beauty of Doom 3’s Source Code

mace
10pts0
www.holovaty.com 13y ago

Notes on Soundslice

mace
3pts0
qconsf.com 13y ago

Scaling Pinterest

mace
1pts0
rob.pike.usesthis.com 13y ago

UsesThis: Rob Pike

mace
411pts184
www.pgcon.org 13y ago

PostgreSQL 9.2: Full-throttle Database

mace
148pts32
www.thelowlyprogrammer.com 13y ago

Writing An Efficient Segmented-Sieve Prime Generator In Go

mace
1pts0
github.com 13y ago

Bitey: Import LLVM bitcode directly into Python

mace
177pts34
www.djangoproject.com 14y ago

Django 1.4 Released

mace
1pts1

I think a fair summary is "We had a few problems with PostgreSQL mostly due to our rapid growth. We rethought the problem and changed the way we use a relational database for large-scale storage and are now using MySQL as a dumb key-value store."

The conclusion reinforces this: "Postgres served us well in the early days of Uber, but we ran into significant problems scaling Postgres with our growth."

I read this a both endorsement of PostgreSQL as well as highlighting some of the problems that any large-scale use of it would run into.

June (https://juneoven.com/) is hiring! | Full-time | SF

June is a team on a mission to transform the kitchen. Our first product is the June Intelligent Oven. A built-in camera and sensors makes June able to identify commonly cooked foods, recommend a cooking program and execute to perfection. With a touch screen, instant-on carbon fiber heating elements, advanced moulded insulation and a finely tuned cooking cavity, we’re bringing restaurant-level performance to the home.

We're looking for Software and Hardware engineers.

See https://juneoven.com/jobs.html

June is hiring! — San Francisco, CA

We just came out of stealth and are looking for smart and creative software and hardware engineers to join us on our mission to bring innovation to the kitchen and home.

Specifically, we're looking for:

  • Android UI Engineers
  • Embedded Engineers
  • Mechanical Product Design Engineers
  • Hardware Engineers
  • Server Engineers
Send us your resume at https://juneoven.com/jobs.html

★★★ June is hiring! — San Francisco, CA ★★★

We just came out of stealth and are looking for smart and creative software and hardware engineers to join us on our mission to bring innovation to the kitchen and home. Specifically, we're looking for:

  • Android UI Engineer
  • Embedded Engineer
  • Mechanical Product Design Engineer 
  • Hardware Engineer
  • Server Engineer
Send us your resume at https://juneoven.com/jobs.html

Not coincidentally, 'drafting' is what led me to first use Python. Prototyping and working out the architecture/logic of a piece of code is very fast in Python.

Many libraries (standard and 3rd-party) are generally well-designed and are of a very high quality (ex. django, twisted, sqlalchemy, numpy)

1. Check the docs and release history of the projects/apps; if they have not been updated prior to v1.3, it's likely to break with v1.4.

2. Run the test suite of the apps.

3. Run the apps with v1.4 and warnings turned on via:

   python -Wall manage.py runserver.  
Not only will you quickly see what's broken, but Django will dump helpful deprecation warnings for things that will eventually break at some point.
[dead] 14 years ago

#7 surprised me. But after looking at the the bytecodes, it's clear why. The while-True adds 3 byte codes to the loop body, the while-constant (using any constant 'truthy' value) adds 1:

  >>> import dis
  >>> def a(): 
  ...   while 1: pass
  ... 
  >>> def b():
  ...   while True: pass
  ... 
  >>> dis.dis(a)
    2           0 SETUP_LOOP               3 (to 6)
          >>    3 JUMP_ABSOLUTE            3
          >>    6 LOAD_CONST               0 (None)
                9 RETURN_VALUE        
  >>> dis.dis(b)
    2           0 SETUP_LOOP              10 (to 13)
          >>    3 LOAD_GLOBAL              0 (True)
                6 POP_JUMP_IF_FALSE       12
                9 JUMP_ABSOLUTE            3
          >>   12 POP_BLOCK           
          >>   13 LOAD_CONST               0 (None)
               16 RETURN_VALUE

I went to Brooklyn Tech as well and 'majored' in CS. Going into college, it was a huge advantage (maybe disadvantage in hindsight since I became bored in most of my 1st and 2nd year courses.)

I haven't seen the curriculum for this new school, but I hope they balance the theoretical with the practical. I hope it doesn't churn kids who end up being cheap labor for the big IT companies in NYC and who don't see Computer Science as a discipline and an art.

Looking back to my CS classes at Tech, I still recall what I learned about basic data structures and common algorithms. Heck, I still remember and find useful the things I learned about assembly.

The things I don't find useful and wish I could forget: Visual C++ and Windows programming.

This is slightly better, IMHO: http://www.python.org/doc/essays/list2str.html

Some best practices when optimizing CPython code:

* Re-evaluate your algorithm (an inefficient quicksort is still faster than an optimized bubblesort)

* Use Python functions and constructs implemented in C (ex. most builtins, list comprehensions)

* Move loops from outside functions to inside (function call overhead is high)

* Use try/except to handle uncommon cases rather than using conditional checks in a loop.

* Eliminate dots (attribute lookup) in tight loops (create a local alias if needed)

See also: http://wiki.python.org/moin/PythonSpeed/PerformanceTips

Deep C 15 years ago

This is brilliant. It contains simple and direct explanations of C's (and C-based languages) rough edges that many programmers encountered or been bitten by but few have taken the time and effort understand.

I appreciate the presentation style too. The characters clearly represent the difference between deep understanding and casual knowledge of the subject. Good stuff.

Django Offline Docs 15 years ago

I've always used (Sphinx and other deps required):

  git clone git://github.com/django/django && cd django/docs && make html
The Python docs can similarly be built for offline reading.

MochMedia (San Francisco, CA) - http://www.mochimedia.com/jobs/

Mochi is hiring engineers (Python, Javascript and Erlang). We bulid highly distributed and reliable systems to help independent game developers distribute and monetize over 30,000 casual games across the web.

We also love open source and have contributed back to the community with simplejson, mochiweb, mochikit and other projects.

Benefits/perks:

- Competitive Salary, Robust Medical Benefits & 401k

- 20% Mochi Labs R&D Time

- Equity in Shanda Games Limited (NASDAQ: GAME)

- Catered Family Style Lunches 2x Per Week

- $3,000 Education Budget

> Let them work for two years. For $8MM, I have my own cloudkick, right?

Assembling all the pieces that make a product does not make a product. There are lots of risks involved in creating new products and generally as companies get larger they become more risk-averse.

Even assembling the pieces involves jumping hurdles in any significantly large company (ie. various levels of approval, staffing, inertia). Acquisitions avoid product development risks and the acquirer also get a group of people that demonstrated they can create a successful product.