HNHacker News
TopNewBestAskShowJobs

asabil

576 karma · joined June 28, 2011

submissionscomments
asabil··on The Moorish invention that tamed Spain's mountains
That was the exact same with the khettaras, they were built and Maintained by the communities.

Talking about notion of a central authority that provides governance is an anachronism in the context of North Africa. But that’s a separate discussion.

asabil··on The Moorish invention that tamed Spain's mountains
Droughts, there is simply not as much water as there used to be :(
asabil··on The Moorish invention that tamed Spain's mountains
Yes, throughout Morocco’s south east you will find what’s called khettaras (خطارة). They are underground irrigation network that was used to transport water from the Atlas Mountains to regions about 300km away.They were in used until the late 80s as far as I know.
asabil··on Building a Cache in Elixir
That's what `ets:fun2ms` at least in Erlang. Not sure how does that map in Elixir?
asabil··on Type-Based Optimizations in the JIT
You could, and in fact there has been Erlang implementations on top of the JVM[1][2], however you will never be able to get the same runtime characteristics of Erlang running on BEAM due to the fundamental differences in memory management: BEAM is first and foremost designed for reliability, predictability and soft real-time behaviour.

[1] https://github.com/trifork/erjang/ [2] https://github.com/jerlang/jerlang

asabil··on Linus Torvalds on Rust support in kernel
I would love to see the same thing, I always told people around me that Erlang/OTP is more akin to an OS than a traditional programming language. That being said, the key feature to enable what Erlang supports is asynchronous termination, which as far as I know is not possible in regular Rust.
asabil··on SPAs Are Dead?
If you have an xss your problem is much bigger than leaking an ephemeral access token through localStorage
asabil··on PipeWire: The Linux audio/video bus
The ALSA interface can actually refer to two different things:

1. The ALSA kernel interface

2. The interface provided by libasound2

The former is basically the device files living in /dev/snd, this interface is hardware dependent and whether you can or cannot send multiple streams to the sound card all depends on the actual underlying hardware and driver support.

The later is actually a shared library that when linked into your application exposes "virtual" devices (such as `default`, or `plughw:0` ...), these devices are defined through plugins. The actual configuration of these virtual devices is defined in `/etc/asound.conf` and `~/.asoundrc`. This is typically where dmix is defined/used. Which means that if you have any application that does not use libasound2 or uses a different libasound2 version, you are in trouble.

p.s. Pulseaudio implements alsa API compatibility by exporting an alsa device plugin to reroute audio from all applications making use of libasound2 (except itself).

asabil··on Show HN: Jackal – XMPP server in Go
Since when Erlang is weakly typed? It is dynamic strongly typed.
asabil··on Britecharts: D3.js based charting library of components
Very different, nvd3 and pretty much all charting libraries are built around the idea of charting templates. What Vega (and its simplified cousin Vega-lite) provide is a grammar for describing the mapping between the data space and the visual space.

What this essentially means is that you are able to build your own visualisations. If you for instance check this sample[1], and in the JSON editor, inside the "encoding" section you swap x with y, and y with x, then click on the parse button, the chart will be redrawn with the x and y axis flipped.

[1] https://vega.github.io/new-editor/?mode=vega-lite&spec=bar_a...

asabil··on Britecharts: D3.js based charting library of components
Slightly off topic, but after discovering Vega[1], I can't quite imagine using a template based charting library again.

[1] https://vega.github.io/

asabil··on YC W17 Launch: Wifi.com.ng – Uncapped ISP for Africa
It's only the Lagos region actually.
asabil··on Dismissing Python Garbage Collection at Instagram
not exactly, but you can have a look at how GC works in BEAM[1][2].

[1]: https://www.erlang-solutions.com/blog/erlang-19-0-garbage-co... [2]: https://hamidreza-s.github.io/erlang%20garbage%20collection%...

asabil··on Show HN: JinjaSQL – Generate SQL Queries using a Jinja Template
Sorry, but this doesn't answer my question. Prepared statements have nothing to do with ORMs.
asabil··on Show HN: JinjaSQL – Generate SQL Queries using a Jinja Template
What about using prepared statements?
asabil··on Erlang/OTP 19.0 has been released
Here: http://erlang.org/doc/man/gen_statem.html
asabil··on Facebook disabling messaging in its mobile web app to push people to Messenger
Heard of messenger.com ?
asabil··on RMS on the Ogg Vorbis license (2001)
Unless you have a hardware decoder
asabil··on Erlang beauty
The "if" keyword should have been "when" instead. It's useful in some cases, but rarely used.
asabil··on Redux: Atomic Flux with Hot Reloading
This is pretty much elm (http://elm-lang.org) and elm architecture (https://github.com/evancz/elm-architecture-tutorial/)
asabil··on JSON in URLs
Once you get there, maybe base64url binary blobs are way more efficient and quite compact.
asabil··on Memory matters, even in Erlang (2010)
The Erlang garbage collector was designed to explicitly avoid unpredictable long pauses
asabil··on Memory matters, even in Erlang (2010)
No it does not, hibernation is very explicit.
asabil··on Taylor Swift’s Stand on Royalties Draws a Rebuttal from Spotify
Only 3 majors left, EMI has been acquired by Universal and Warner. Also the problem is in the payout from the labels to the artists signed to them.
asabil··on Show HN: Madrassa – Code and Design Courses Reduced to 5sec GIFs
I think it's a pretty cool name
asabil··on Ask HN: Which HTTP verb should be used for a json api action /user/:id/retry?
POST most definitely. POST stands for "process this" in REST semantics.
asabil··on Native Responsive Images
What about a proper image format with support for multiple resolutions? Similar to the way it's done in SVC (http://en.wikipedia.org/wiki/Scalable_Video_Coding)
asabil··on The Ultimate Frontend Build tool: make
Couldn't agree more
asabil··on Explicit Trusted Proxy in HTTP/2.0
Heh, bandwidth can help, but caching helps primarily with latency.
asabil··on The Erlang Shell
It wouldn't make sense to have a network actor and a parsing actor. Because these two tasks (downloading the data and parsing it) are not concurrent, you should instead have a crawler actor that downloads -> parses -> stores.
← PreviousPage 2 of 3Next →