HN user

aartur

567 karma
Posts23
Comments67
View on HN
aartur.substack.com 4mo ago

AI Is a Microcontractor

aartur
4pts0
github.com 8y ago

Kunegu – a federated web search engine

aartur
3pts0
github.com 8y ago

Monique Dashboards just released – an innovative way to make custom dashboards

aartur
3pts0
monique.io 9y ago

Show HN: Monique.io – a monitoring system for high-level “metrics”

aartur
4pts6
monique.io 9y ago

Show HN: Monique.io – a new kind of monitoring system (AI + Unix + Javascript)

aartur
18pts10
www.drdobbs.com 10y ago

Errant Architectures (2003)

aartur
1pts0
github.com 11y ago

Memoize – a replacement for make relying on strace

aartur
81pts22
hackerusesthis.com 11y ago

Show HN: Hacker Uses This

aartur
1pts1
hackerusesthis.com 11y ago

Show HN: Hacker Uses This

aartur
13pts7
docs.python.org 11y ago

Pip bootstrapping included in Python 2.7.9

aartur
4pts0
github.com 12y ago

Mschematool – minimal database schema migration tool

aartur
1pts0
freeprogrammersblog.vhex.net 12y ago

Linux 3.9 introduced a new way of writing socket servers

aartur
289pts126
news.ycombinator.com 13y ago

Ask HN: Aren't Ember and Angular a "wrong" kind of framework, similar to J2EE?

aartur
20pts17
calculator-fx.com 13y ago

K-means clustering from command line

aartur
2pts0
openbenchmarking.org 13y ago

AMD FX-8350 is faster than i7 for compilations and costs 30% less

aartur
1pts1
freeprogrammersblog.mooo.com 13y ago

Small parts of Python builtins functionality you might overlook

aartur
2pts0
www.digitalocean.com 13y ago

DigitalOcean's site and servers very slow. Can't SSH.

aartur
1pts1
code.google.com 13y ago

Chrome bug unsolved for 2 years. Don't people change cookies in ajax responses?

aartur
1pts0
gist.github.com 13y ago

Why Python can be hated

aartur
2pts0
coder48.wordpress.com 13y ago

Using a low-end machine for development to meet your users

aartur
2pts0
coder48.wordpress.com 13y ago

Why programming is not mathematics, and can't be

aartur
2pts0
en.wikipedia.org 13y ago

Microsoft's not conforming to standards was a method to fight Open Source

aartur
2pts0
www.nih.gov 13y ago

Obesity does not cause heart disease

aartur
2pts0

I'm not against wool/polyester inner layers, they are much better than cotton. But it's not magic, they will also work worse when they are wet, and they don't transport the sweat from the skin perfectly. So what works the best for me is reducing the effect of accumulating sweat, i.e. maximizing the breathability of the jacket (for example, by using a "windshirt" style jackets from materials like Pertex).

Maybe in such exteme conditions as -40°C it's different, but for me a windshirt + thick inner layers (polyester/wool) work well for 6+ hour long bicycle rides in about 0°C.

I don't recommend Goretex, or other jackets with membranes, for outdoor activities (unless it's raining or it's really windy). They are not nearly as breathable as regular clothes, which means you will be sweating more. And even when you wear wool or a polyester fleece they won't warm as well as when they are dry.

This sound counter-intuitive but a lighter non-membrane jacket works better for me, both in terms of comfort and longer-term retention of body heat (better breathability -> less sweat -> smaller cooling effect).

Thanks for the feedback. Yeah we are struggling to bring a simple description (you might look at the product faq [0]). But it's for a reason - Monique.io doesn't directly compete with similar products like traditional monitoring systems or dashboard frameworks.

If you are a programmer, then probably the most honest description would be that it's a monitoring system for "custom metrics" - anything that a traditional monitoring system or an APM platform can't collect (because it requires application-level knowledge like the data model in your DB). The traditional monitoring systems are focused on system-level metrics (CPU, memory) or performance data, making things like monitoring SQL results or JSON really hard and unnatural. Monique.io makes such tasks much simpler and "natural".

Another view is that the common knowledge about what is "monitoring" cuts out a large portion of things that really should be monitored (SQL results, health checks, API responses). The reason is that we can't collect the metrics automatically. But the work should be done and the traditional products don't provide much help for the task.

(saying all that, we and others use Monique.io also for monitoring CPU/disks, creating "BI" dashboards or sending messages to Slack)

[0] https://monique.io/product-faq

Monique.io is a monitoring system focused on high-level "metrics" (SQL results, API responses, JSON data) that are automatically parsed by AI, with alarms defined in Javascript, plus the feature to auto-create a dashboard by employing the concept of a "template tile".

We created Monique.io because we were tired of the "same old, same old" monitoring systems that didn't help much with a lot of daily tasks.

We launched Monique.io a few months ago and now bring improvements and a free plan (which we are committed to preserve; the plan does not include alarming functionality).

I think PH is different because it seems that if a superuser/mod will not upvote an item, it will be practically dead. On HN/Reddit/Medium you will always get at least 20-50 views. On PH I got 5. It's even more stark when you count the fact that top PH submissions get many more views than on HN/Reddit/Medium.

From my investigation it seems that it's some kind of filter provided by Cloudflare, in this case blocking a possible "shell script injection".

tweeting to my 400 followers.

That must be the difference (or I was blocked by some filter). I didn't try to make a social-media call-for-action, because I didn't want to trigger voting-ring protections.

EDIT. As for the filters... PH doesn't allow comments which include "ps aux" or "curl" strings. I learned this by studying HTTP responses using Developer Tools, because the error was not signalled in PH's UI :).

I submitted my startup two days ago by myself, as someone who didn't have any PH "karma", but I somehow was granted permissions for submitting products (probably because I was subscribed to a newsletter for a long time). I asked by email if it's ok if I submit my startup by myself. I was told it's ok and wished good luck.

On the launch day my site received literally five visits (in the first hours, probably a few more later). It was dead from the start and didn't get a real chance to be seen by the community. Lesson for everyone: under no circumstances have your product submitted to PH by a non-mod account.

I'm actually not angry at PH. They have their rules which are obviously working. The "elitist" model is working (to some degree at least). My fault was that I didn't follow the guides which mention what I learned. And I think they should give a warning when submitting a product by an account like mine, because there's no practical chance such product will be visible.

And there's another surprise waiting to be discovered. The execution of a LWT is not guaranteed to return applied/not-applied response [1]. It can raise a WriteTimeout exception that means "I don't know if applied". It looks like in that case it can be worked around by inserting a UUID and in case of a WriteTimeout reading the UUID using SERIAL consistency and checking if it's the inserted UUID. But generally this limitation of LWTs makes implementing some algorithms impossible, e.g. you can't implement a 100% reliable counter.

[1] https://issues.apache.org/jira/browse/CASSANDRA-9328

I run the benchmark using PyPy (which doesn't have this C extension) and got a result about 20% slower compared to CPython (ie. still faster than Go).

EDIT. I also did a funny thing and replaced the CPython C _csv.so extensions with pure Python version _csv.py, from PyPy. It run about 80 (eighty) times slower. It shows what wonders does JIT do (at least to some code).

Isn't the append-only design unsuitable for scenarios where many updates/deletes are made? If you update/delete 1GB of your 2GB database each day, then after a year the database is 365GB in size, but the live data is only 2GB.

I think the git-like features (history, merging) are very helpful for internal work, but when the dataset must be published, I think in most cases only the newest snapshot should be made available. But then the question is what format should it have...?

Generally the best advice is to conform to the SPOT (Single Point of Truth) rule as much as possible. For example, the place DEFINING users' addresses can be your own database and the data in salesforce is only a REPLICATION of that data. And the DEFINITION of chats is in Intercom and you only have an API for RETRIEVING the data in your own code.

It helps a lot when the "owners" of data are defined that way, because it's easy to reason about the flows. You can then have a set of APIs in your code for accessing (be it the master data/replicated data/live-fetched from an external system).

Interesting. Is the circuit breaker a feature of .NET running on Windows?

To my knowledge, it can't be implemented on Linux + Java or Python (a thread can't be terminated from outside, and some syscalls involve a whole process).

Microservices are advertised as a means to modularization, but it's what programming language modules are for - they are defined on source code level and can be freely used in different runtime components without network/ops/version-management headaches. When you have your module defined that way, you can think of exposing it as a microservice because this may make sense for your use case.

Imagine that each Python module runs as a microservice. For many modules this would lead to huge performance degradation, for example a regexp module can be called thousands times per second, the running time of a call is usually short and replacing an in-process call with a network call will give 100-1000x slowdown.

But if you take a different use case of the same module - complex regexps running on large texts, potentially causing out-of-memory errors, then packing the module into a microservice can make sense - separate processes can have large caches, an out-of-memory error terminates an instance of a microservice only and not the calling process.

Generally I think the advice should be to always use source code modules in the first place, and create microservices using these modules for specific use cases only involving runtime needs like caching, fault tolerance, scalability.

I submitted this site some time ago: https://news.ycombinator.com/item?id=9058624. It reached front page for a short time, but was flagged by users. The changes I've made:

- no sign up required for listing tools and getting recommendations

- unwanted recommendations can be removed, to make place for other recommendations

- a plan for a newsletter is announced

Thanks, I'm planning to make a few changes mainly to allow excluding common tools from recommendations. Maybe I'll also add user following functionality.

I noticed that the recommendations are probably equal to the union of fuzzy intersections of a tool set of the "logged in" user and every other user's tool sets, where the "fuzzy membership" function is an assignment of importance scores to tools.

By "fuzzy" operations I mean the mathematical theory [0]

I see that many people didn't change default importance score from 5, looks like UI is bad for this.

[0] http://en.wikipedia.org/wiki/Fuzzy_set

Yes, I'm already planning to add a button to "remove" recommendations.

The recommendations algorithm is based on some heuristics to detect how similar are two users. Nothing "generic". I'll describe it in detail if you are interested.

Now I'm trying to get information about why the HN submission is invisible...

EDIT. The submission was flagged by users. Weird.

Two Chromes - one is in Desktop category and the other is in Mobile.

Mean People Fail 12 years ago

I wanted to oppose PG's view on what constitutes a startup to "normal" business practices, which involve fighting competition, networking with important people, hiring the cheapest workforce etc. In this kind of game being nice doesn't help. And you have to play this kind of a game when you are either not a startup (ie. not innovative) or big (because then you have competition and you also become a corporation in structure). And I think the companies from the parent comment succeeded because of these "normal" business practices.

In PG's view startups succeed because they actually create some real value, something that other people want. And to build something like this it helps to be nice.

Maybe I'm naive, but it's hard to say that PG doesn't know what he is talking about when he talks about startups :).