HNHacker News
TopNewBestAskShowJobs

huyegn

144 karma · joined August 6, 2009

computer vision, visual search

https://everyhue.me

submissionscomments
huyegn··on Pipelining might be my favorite programming language feature
I liked the pipelining syntax so much from pyspark and linq that I ended up implementing my own mini linq-like library for python to use in local development. It's mainly used in quick data processing scripts that I run locally. The syntax just makes everything much nicer to work with.

https://datapad.readthedocs.io/en/latest/quickstart.html#ove...

huyegn··on Fecal transplant pill replaces antibiotics for serious infections
please do update us
huyegn··on Fecal transplant pill replaces antibiotics for serious infections
What did you do to improve?
huyegn··on Swift Static Linux SDK
Swift for all its niceties still suffers from a habit of inherently tying its conventions to Apple and its "appleisms" when coding. Tasks that should be relatively straightforward to do e.g. iterating through a file line-by-line still requires an awkward amount of code. It's especially noticeable when compared to languages like Go or Python:

https://forums.swift.org/t/text-streaming-in-standard-librar...

While these things are not difficult to solve with some minor additions to the standard library and documentation that emphasizes some basic conventions, the fact that we're on Swift6 and things like this aren't just available speaks to how much further the community needs to evolve to get the language ergonomics right for non apple-y things.

huyegn··on New COVID-19 cases reported across Japan
Meanwhile a man from the Westerdam cruise ship, where one passenger already tested positive, escapes quarantine, books ubers, and multiple flights, is arriving back in Seattle:

https://komonews.com/news/local/man-stranded-on-coronavirus-...

Some people can't get more selfish. Also, what a colossal failure on the part of customs and immigration.

huyegn··on Data in SwiftUI, Part 2: Views as a Function of Data
As someone who has done frontend dev on the web, I find SwiftUI refreshingly good.

Using SwiftUI is the first time ui programming on iOS has clicked for me.

For anyone getting into this, I suggest you take a look at apple's very well done tutorial series before using other sources:

https://developer.apple.com/tutorials/swiftui/tutorials

I spent about 3 days to go through the entire series and the time investment was well worth it.

huyegn··on Sometimes, requiring explanability is counterproductive
I stated that rather than explainability, for most use cases, people just want calibrated and robust uncertainty estimates NOT low quality and uncalibrated uncertainties estimates.

Your example points to models that provide low quality uncertainty estimates, but that's not true for all deep learning models.

I believe it's these low quality uncertainty estimates that lead people to look toward "explainability" as a solution, but for the majority of use cases, I think people just want better uncertainty estimates so that they can "know when they're model doesn't know".

There are techniques now to get higher quality, calibrated, uncertainty estimates that don't suffer from the problems you mentioned and I've outlined these solutions in my posted link above.

Additionally if you're interested, there is some nice recent research from google on the subject:

https://ai.googleblog.com/2020/01/can-you-trust-your-models-...

and from oxford:

https://arxiv.org/abs/1912.10481v1

huyegn··on Sometimes, requiring explanability is counterproductive
That's an interesting idea and I get the motivation. I often wonder if we're already able explain predictions. There are things like gradcam to determine which inputs caused which activations. It's just that the explanations aren't very understandable or satisfying from a human perspective.
huyegn··on Sometimes, requiring explanability is counterproductive
I agree with Yann here ... I think the demand for explainability is like a person asking for a "faster horse" when what they really need is a car.

When people ask for explainable models, what they really want (in my opinion) is calibrated and robust uncertainty estimates .

Good uncertainty estimates would let them know when to trust a model's prediction and when to ignore it.

For example, a model trained to predict dog breeds should know nothing about cat breeds, and there should be some way to quantify when it doesn't know!

I've been doing a review of techniques that are becoming more popular in this area:

https://blog.everyhue.me/posts/why-uncertainty-matters/

huyegn··on Queues Don't Fix Overload
Absolutely agree with this.

Another nice illustration of how when arrival rate is greater than departure rate we get overflowing queues:

http://setosa.io/blog/2014/09/02/gridlock/index.html

huyegn··on Give me back my sanity: How I had to install Pandoc in a CentOS Docker container
Wow, I just read through the documentation for the Nix package manager and it's a breath of fresh air...Source based builds but with the convenience of pre-compiled binaries hashed with all the input parameters used to create those binaries:

https://nixos.org/nix

Has anyone tried using this for development?

huyegn··on Python for Humans
To get around the problem of child subprocesses spewing out too much output and blocking the parent process, one can provide an open file handle to the stdout/stderr arguments of the Popen call. I've ran into this many times and this solution has reliably worked for me every time. This could be documented better in the Python docs.

For quick tasks and scripts, I've found subprocess.check_call, and subprocess.check_output with shell=True are great tools for spawning subprocesses and quickly grabbing output. They're pretty straightforward to use.

huyegn··on Outsourcing Startups
We're also looking into getting a designer for our site, I'd be interested in hearing how you managed the project.

When you started with your designer, how did you convey the type of look and feel that you wanted to give your business? Did you point them to other similar looking sites or was he/she the one that pushed forward the final vision and design (which BTW looks great)?

huyegn··on Runtime code modification. Erlang? No, Python
We used this technique once in one of our twisted servers to quickly fix in-memory data structures that had been loaded from old sources.

Recently, my team has been developing most of our newer network services using gevent. It's probably the closest thing to erlang that python has when it comes to programming asynchronous servers.

One of the things I always missed was this manhole feature, but while rummaging around the other day, I found this:

http://www.gevent.org/gevent.backdoor.html

Haven't tried it yet, but it looks like it will achieve the same task :)

huyegn··on Lua/APR - proper standard library for Lua
If you liked Kernighan and Ritchie's "The C Programming Language", then you'll love "Programming In Lua". The first edition is available online here:

http://www.lua.org/pil/

Like K&R, it's style is colloquially terse, yet each sentence is chock full of information. It's a great book for someone who's already coming from another language like Python.

If you're into graphics programming, then http://love2d.org/ would be the perfect vehicle for you to get into Lua while you read PIL.

huyegn··on Duke Nukem Forever Gets Delayed... again
Part of me thinks this is a genius marketing ploy. Seriously, outside of the few remaining die-hard fans, who even knew that Duke Nukem forever was still being developed? I certainly didn't before this piece of news, and I'll now be watching when they release the thing to see how it goes.
huyegn··on No, shut up. What statistical programming languages can learn from Dropbox.
I've been using http://tablib.org/ for awhile now to read in tabular data. With this summary fn and a few other functions to simplify the process of aggregating data into useful views I think you've got a winning solution to the author's complaint.
huyegn··on Don't waste your time by cd-ing in the terminal
Hey Guys,

This is my blog.

FWIW, I've actually switched away from using the script mentioned in the link posted by OP and have moved towards using an improved version below.

http://www.huyng.com/bashmarks-directory-bookmarks-for-the-s...

This new version has 3 commands:

    - "s" for save current directory as a bookmark
    - "g" for jump to bookmark's directory
    - "l" for list all bookmarks.
huyegn··on The Technology Behind Convore
We're also using Twisted a lot at my company, IQ Engines. It's powerful and has done a pretty good job for us so far. I just wish the documentation, which is crucial for getting new coworkers up to speed, was better. Do you guys continue to build new services at Justin.TV using it or have you migrated to other eventloops ie Tornado, gevent etc?
huyegn··on The Pirate Bay co-founder to launch an open and distributed ICANN alternative
It seems like this could be a good opportunity for us to make good use of newly available technologies. Not exactly sure how it would work yet but a Distributed DNS system could be implemented using CouchDB.

Specifically, CouchDB's ability to distribute databases to clients seems like the ideal feature for this technology.

"CouchDB is a peer based distributed database system. Any number of CouchDB hosts (servers and offline-clients) can have independent “replica copies” of the same database, where applications have full database interactivity (query, add, edit, delete). When back online or on a schedule, database changes are replicated bi-directionally."

huyegn··on Console productivity hack: Discover the frequent; then make it the easy
I've always felt that autojump's "jump" command could be hit or miss when you had directories with similar paths. Because of this, I wrote a tool for myself to quickly jump around to commonly used folders by using short named aliases.

The manual directory alias naming means that you can target the folder that you want much more accurately. Combined with tab-completion, this thing has become a huge productivity booster for me.

link: http://www.huyng.com/bashmarks-directory-bookmarks-for-the-s...

huyegn··on Ask HN: What are some good GoDaddy alternatives?
wanted to upvote nearlyfreespeech. Even though being a registrar is not their main business, their site is a no-bs godsend for managing your domains. My only wish is that they had support for more than the usual .net, .com. .org domains
huyegn··on Ask HN: What's the equivalent to Python, Compiled?
I initially looked at languages like clojure, but the slow load times of the JVM put me off. Now that you mentioned gcj, I found this note from Rich Hickey: http://groups.google.com/group/clojure/msg/58e3f8e5dfb876c9 which makes it sound like one could compile clojure => java => native binaries.
huyegn··on Ask HN: What's the best way to reinvent myself?
Hey reinvent,

Send me an email (see the link in my profile) . I can help you get up to speed with Django, real-time systems, and the web industry if you can teach me something valuable about the defense industry.

huyegn··on Node.js is genuinely exciting
For those of you who have taken a look at this, is there any library or construct in python that would be equivalent to the Events in Node.js? http://nodejs.org/api.html#_events

That's the deal maker for me... To have custom defined events. Correct me if I'm wrong but even Twisted doesn't have this facility?

huyegn··on Why I like Redis
I LOVE redis, I'm surprised there is so much talk about tokyo cabinet et al, but noone says anything about redis. It's dead simple to setup. The python libraries are super easy to work with. For simple persistence and queue-like abilities there's nothing that can match it.
huyegn··on Ask HN: What's the best webapp UI you've seen and what was used to make it?
wow, awesome UI, I looked at source but saw that you minified most of your js. How did you do that sliding panel nav? Do any jquery plugins that you recommend?

I do a lot of jQuery as well but have been frustrated lately by how it's simplicity sometimes also makes it hard to maintain. For example as your app grows, you'll inevitably run into problems where your selectors no longer work because of refactoring and etc... Have you faced the same challenges? If not, what do you do to keep down the complexity?

huyegn··on Ask HN: What's the best webapp UI you've seen and what was used to make it?
wow nice ui,I noticed you used jquery for the actual stores but cappuccino for the actual application.
huyegn··on Ask HN: What's the best webapp UI you've seen and what was used to make it?
Yep, Gmail's interactivity with its keyboard shortcuts, navigation, settings, chat application and etc is extremely impresive. What's even more amazing is that most of this stuff is all done on one page cross-browser. This is the kind of application I'm talking about. What tools do you use to keep the complexity of such an app under control?
huyegn··on Startup school emails sent
I didn't get an email but got an 'Ok see you there' when using the above link. Is this a standard response for everyone or does this mean I'm in?
Page 1 of 2Next →