HN user

latitude

1,791 karma

http://swapped.cc

Posts33
Comments257
View on HN
swapped.cc 9y ago

Yafe – Yet Another Fractal Explorer [2011]

latitude
1pts1
bvckup2.com 9y ago

Show HN: Our Red Dot Design Award submission (from 2014 and no, we didn't win)

latitude
1pts1
medium.com 10y ago

AB-testing PayPal as a Payment Option

latitude
3pts1
bvckup2.com 12y ago

Show HN: Bvckup 2 – Simple Fast Backup for Windows

latitude
145pts102
pastebin.com 13y ago

Show HN: What do you think of this short End User Licensing Agreement?

latitude
14pts30
news.ycombinator.com 13y ago

Ask HN: Are you running a web crawler off the following IPs? It's broken

latitude
22pts4
bvckup2.com 13y ago

How to update a desktop app

latitude
30pts9
github.com 13y ago

Show HN: now.sh

latitude
83pts41
swapped.tumblr.com 13y ago

No Emails on Saturdays

latitude
52pts31
news.ycombinator.com 13y ago

Got two domains expiring tomorrow - libzero.com, libzero.net - up for adoption

latitude
1pts0
swapped.tumblr.com 13y ago

Novel Optimization Technique

latitude
11pts9
bvckup2.com 13y ago

Show HN: My Experimental "Dev Blog" For A Pet Project

latitude
61pts20
swapped.tumblr.com 13y ago

(Wanted) Extended default arguments in C++

latitude
3pts0
swapped.tumblr.com 13y ago

How To Stop Forum Spam

latitude
30pts39
swapped.cc 13y ago

Show HN: Prune Unwanted Stories from HN Front Page

latitude
49pts24
dribbble.com 14y ago

Show HN: A Take on Github Logo

latitude
8pts0
swapped.cc 14y ago

Resubscribe

latitude
10pts4
swapped.cc 14y ago

Performance of a Paid Tweet

latitude
21pts32
swapped.cc 14y ago

Google bot now appears to emulate users interacting with the site

latitude
130pts30
swapped.cc 14y ago

Show HN: Pinned tweets (an idea)

latitude
16pts9
swapped.tumblr.com 14y ago

Pre-launch promotion in numbers, part 1

latitude
10pts4
news.ycombinator.com 14y ago

Ask HN: Sysadmin online hangouts?

latitude
2pts2
dribbble.com 14y ago

Followware

latitude
18pts16
swapped.cc 14y ago

Show HN: Password validity hinting

latitude
58pts78
swapped.cc 14y ago

On Backups

latitude
4pts1
swapped.cc 14y ago

Show HN: Native Analytics (work in progress)

latitude
19pts29
v4.swapped.cc 14y ago

Tell HN: Got a pending US patent app? Read this.

latitude
9pts3
bvckup.tumblr.com 14y ago

Version Numbers Don't Matter (to users)

latitude
16pts24
swapped.cc 14y ago

Font Smoothing Detection in Browsers

latitude
9pts6
www.freetype.org 14y ago

Tell HN: Help funding (web)font autohinting project

latitude
10pts2

One man’s “beautiful” is another man’s “flat and bare” :)

That said - $20 feels right for this sort of thing. Gotta be light, polished and snappy though, truly exceptional. Not of an Electron variety. The fee is basically a pat on a back for the developer for a job well done.

Certainly not more, because it’s a goodwill purchase. But if it’s less, then it’ll look like a temp side project with a limited life expectancy.

It is indeed pretty OS specific.

Not the SMART part, but how you talk to the drives and controllers and how storage is generally sliced into partitions, volumes, etc. Windows has a fairly comprehensive version of Software RAID, but in true Microsoft fashion they do things ass-backwards in more than one place. For example, striped volumes (RAID 0) will use only a part of a partition for each stripe, but to learn that you'd have to talk to Virtual Disk Service rather than regular Disk/Volume management API. This is, basically, as unportable as it gets.

Might be a good time to plug my little baby - https://diskovery.io

If you want to have a quick, but in-depth look at your drives, it'll give you lots of data, including the SMART table interpreted in a vendor-specific way. It also understands some RAID setups, and more support for this is upcoming. Windows only, at the moment.

To explain a bit of a context - SMART data comprises a set of attributes and each attribute has a value, a threshold and a raw value. Values are opaque 8-bit somethings that are only meant to be compared to thresholds. When they fall under then, then it may indicate a problem. They aren't really interesting. What's interesting is the "raw" values, but as the name implies, they are vendor-specific and require decoding. Some vendors publish the specs, but most don't. Specs that are published are often incomplete or plain wrong. So there's a LOT of reverse engineering and guesswork involved, which makes writing a SMART tool both frustrating and interesting at the same time. But if you need just the "dying / healthy" indicator, it's a very easy thing to extract from a drive.

I wrote a tiny DNS filtering daemon that does exactly the same -

https://github.com/apankrat/dnswhisperer

I've been using it routinely for past couple of months and it works really well. It blocks web ads, but it's blocks in-app ads and tracking as well. Tailing a log when launching an iPad game make for an interesting read. If anything slips through, just check the log, add the offender to the blacklist and restart the daemon.

I originally posted this on Dribbble, but I think it might actually be of more interest here. This was ultimately an experiment in software marketing, so what follows in as a postmortem for others to learn from. Hope you, guys, find it useful.

  <cite>
A couple of years ago I had a weird idea to try and enter our software product into the Red Dot Award [1] competition. Somehow a thought of being able to stick that swirly red sphere on our website was highly appealing, so I emailed them and asked if there was a way to enter with a software product.

Surprisingly, that exact year they decided to start collecting money on that front as well and included the Interface Design sub under Communication Design category. For mere few hundred euros one could submit their work for their expert analysis on condition that they were prepared to part with additional 1.5K upon obtaining an award.

Long story - short, we applied, paid the fee and I then killed a couple of weeks of drafting this presentation. Mind that there were absolutely zero guidelines on what they expect from it except that physical products should be shipped well in advance. One of the options was to submit a link to the presentation (rather than a PDF), which is what we ended up doing.

Being expertly versed in modern web technologies we added a couple of lines of Javascript to report some events from the page when it was viewed.

The judgement time comes and we get a page hit.

Very exciting as you can imagine, but then we look at details and see that they read through about 1/3 of the application, looked at one animation, scrolled to the bottom and left. And that was it. In and out in two minutes.

You'd imagine that judging an Interface Design competition entry would involve, you know, trying out said Interface or perhaps reading through the actual application, but I guess that'd be setting the plank too high. So needless to say that was quite underwhelming and as you can probably guess we won a nice round zilch.

In any case, here's our application in all its three-color glory. I still like it and I still think we did a pretty good job with this particular piece of software, Interface Design included.

  </cite>
[1] http://www.red-dot.de/

If you want an answer, drop me an email. I'd rather not disuss this in public, but we have no hiring restrictions per se. In fact, we routinely contract out bits of work.

Pipemetrics | Switzerland | Remote within Switzerland

• C/C++ programmers with considerable Windows experience

• Backend programmers with LAMP experience

For details see here - https://pipemetrics.com/hiring

We develop simple, elegant and highly performant desktop software with particular focus on rigorous engineering and meticulous UI design.

We have a large and very enthusiastic fan following and we are now working to create more products built on the same design approach.

This was literaly the first AB test I did in my 20+ years in business and to say that I'm imressed with the results would be an understatement. First time's a charm I guess :)

Pipemetrics | Lausanne, Switzerland | Remote within Switzerland is OK

We make high quality desktop software for Windows [1], got an amazing user following [2], and we are now expanding to make more products. Shocking, I know. Windows and all.

Looking for experienced Windows C/C++ developers and the right person to take over online marketing and promo activity. Details are here - http://pipemetrics.com/hiring

[1] https://bvckup2.com

[2] https://bvckup2.com/opinions

Good luck getting people to pay for it.

No luck needed. There's a metric ton of people who just crave well-crafted software. I have a project of that nature now and I am absolutely blown away by the amount of compliments and thank-yous sent our way. It's really quite something.

Pipemetrics - Lausanne, Switzerland

We are a small Swiss company specializing in design and development of desktop software with a particular focus on polish and quality. Our first product is Bvckup 2 and we are now looking for people to help us grow our product line.

Basically, if you like your C/C++ code light and optimized, all i's dotted and t's crossed, we should talk. There are people out there who recognize and appreciate the software quality as a feature in its own rights. These are our users, this is whom we are after. Come and join us -

1. Senior developer - C/C++/Windows

2. Junior developer - summer internship

3. Marketing & communication expert

  Must be legally authorized to work in Switzerland.
Details - http://pipemetrics.com/hiring

But still, come on, guys...

libnetsnmp used to make close to a million calloc() calls when responding to a query for a number of CPU sockets on the machine. That was kind of amazing in its sheer brazenness.

Additionally, we are considering adding a couple of summer internship positions for EPFL students. If you are at EPFL and the above looks interesting enough, drop me a line.

Pipemetrics - Lausanne, Switzerland - Local only

Senior developer, C / C++ / Windows

Looking for experienced developers to help expanding our existing product into a suite of complimentary products and services (https://bvckup2.com).

  --
Basic requirements - Solid C/C++ with a focus on producing lean and efficient code; considertable experience developing and shipping software for the Windows platform.

Good to have - Knowing one's way around Linux, both the development toolchain and the shell; PHP, JS, SQL; people skills for communicating with users.

Nice to have - Embedded and kernel development experience.

Ideally, you should be reasonably comfortable with all elements of a system that allows controlling a Windows app through an externally hosted web interface - from Windows, through the network to the PHP/SQL backend to the HTML/JS web frontend.

  --
The company is built around the notion of "doing one simple thing, but doing it really well." This doesn't mean creating simplistic software, but rather having a single primary function that captures one specific user need and then providing a host of supporting features to make things simple and convenient. This is a fairly alien approach on Windows where the software still tends to compete on the length of the feature list first and foremost. However, the good news is that there is a substantial demand for simpler, but better-made software. This is what we do.

Prior to founding Pipemetrics, I was the principal person behind Hamachi VPN service (http://swapped.cc/hamachi).

  --
Get in touch - hello-at-pipemetrics.com / alex-at-pipemetrics.com

OK, then.

I'll give you a pointer to an element and you remove it from all containers that it is currently on, in O(1).

The only way to do that is to keep a bunch of iterators in the item itself, which is virtually identical to the intrusive container model except it involves more pointers, more heap allocations and introduces an extra invariant into the data model (the iterator stored in the item must point at a list that actually contains said item). And the only benefit you get for all this pain and suffering is that you don't have to do any "funny" casting via container_of() contraptions.

Point being is that once data items sit in more than one container, intrusive container model generally results in a simpler code that is also more efficient.

I went through the whole stack of SMTP RFCs just this week and the takeaway was this.

  TCP/25 if you are talking directly to the recipient's mail server,
  though it's discouraged if you are not a mail server yourself.

  TCP/587 - the same as above, but you are a mail client. In particular,
  it's the port for talking to "your" server, which you are tasking with
  relaying your email to the destination.

  * If you have username/password and want to "login", you want TCP/587.
On the other hand
  TCP/465 is a deprecated way of *securing* an SMTP connection.
It's just SMTP over TLS. Deprecated, discouraged, but still widely supported. Functionally it can be either TCP/25 or TCP/587, depending on the setup at the server end.

To secure 25/587, you first speak a bit of SMTP and then initiate the TLS handshake with STARTTLS command. It's all actually really simple. Much simpler than it seems when you are looking at the SMTP configuration UI in a typical mail client :)

  --
(Re-edit) Nevermind. Let's keep it on-topic.
  You never have to pay anything, and you can keep using 
  Ello forever, for free. By choosing to buy a feature now
  and then for a very small amount of money you support 
  our work and help us make Ello better and better.
This is way too generous and altruistic to be practical. They obviously mean well, but this is effectively a donation-based model and it very rarely works in practice.

What I think they should do is to offer personal accounts for free and charge for enterprise presence. I know a handful of people who use Facebook and Twitter in read-only mode and who follow just the companies. They effectively use social networks as a news feed of product updates, coupons, deals, discounts, etc. Moreover, they explicitly seek out the companies and follow them. If you think about it, it's an insane arrangement - you have people opting in to hear to what you have to say. This is valuable, this is something worth paying for and it keeps the network free for the individuals.

You don't need to reinvent TCP. You can simply put TCP over UDP. Works like magic :)

TCP hole punching works just fine in practice, but it's certainly a part of the "long tail" of empirical hacks that allow bumping NAT traversal rates into 95+% range. Detecting NATs that decrement ports is another. Ports that are incremented/decremented by more than 1 is yet another. And there's also UPnP that gives you another percent or so.

I was doing this as a part of the Hamachi project [0], almost 10 years ago, and this long tail was absolutely instrumental to being able to serve hundreds of thousands of clients off just few measly Dell servers for $300/mo in hosting costs.

[0] http://swapped.cc/hamachi

Twitter should really allow advertising to your existing following.

I have an account for one of my projects that I use to announce new releases and updates. This happens once every few weeks, so I would pay for an option to stick my tweet at the top of my followers' feeds for, say, a week. If Twitter would then also allow people to unstick a tweet after reading it (or opt out of sticked tweets altogether), I think it'd be a great and welcome feature to have for everyone involved - TWTR gets paid, I get more eyes on my tweet and others won't miss my updates, which is what they followed me for to begin with.