netdog's comments

netdog | 6 years ago | on: Ask HN: Who wants to be hired? (May 2019)

  Location: TX, USA
  Remote: Yes
  Willing to relocate: Yes, to MX, CL, or AR.
  Technologies: Linux, C++, Python, TCP/IP, 3G/4G networks, PostgreSQL
  Résumé/CV: Not published to the world. I will provide to inquirers.
  Email: [email protected]
I have 20 years of experience in systems and engineering software development, system design, data modeling and telecom networks. This includes managing engineering projects and teams, and related business efforts such as proposal development, product management, and technical support.

The last 8 years have been in the telecom industry, the last 4 in wireless/mobile.

I'm interested in a Lead/Principal/Staff/Architect role, where my years of experience are needed.

I'm also open to contract work, and travel to LatAm.

Please don't contact me about opportunities related to: Ads, Bitcoin, Scraping, User tracking, Gambling.

netdog | 8 years ago | on: The Last Invention of Man

The doomsday title reminded me of the world's last C bug:

  while (1)
  {
      status = GetRadarInfo();
      if (status = 1)
          LaunchMissiles();
  }

netdog | 9 years ago | on: Things Unix can do atomically (2010)

The GCC Atomic Builtins mentioned in the article are not specific to Unix. They are compiler constructs, and depend on specific architecture hardware support. All x86 CPUs have such support for some years now. So these atomic operations can also be used in non-Unix software running on x86 CPUs.

The GCC documentation lists other non-intel architectures which also have the features required to support the atomic built-ins.

netdog | 10 years ago | on: Tmux has left SourceForge

> I'm not saying github will be around forever, but I highly doubt they'll make the same mistake sourceforge is making now.

Github could be sold, just like Sourceforge was sold, and the new owners could behave very differently from the current owners.

netdog | 11 years ago | on: DEFCON Router Hacking Contest Reveals Major Vulnerabilities

Every SoC has a different kernel, heavily patched, with drivers specific to the SoC. The SoC vendor has an army of paid programmers developing this software for every SoC they make.

These Soc vendors have to start working on a new kernel long before the chip is released, as they need working software by the time the chip goes to market (to offer the router makers). Broadcom's business depends on this. They will not simply hope some loose-knit group of volunteers will timely produce software which will help them sell their new chips.

And it's not realistic for the open router project to do this much work. It would require cooperation from the SoC vendors, providing free and early access to their kernel driver source and complete documentation for their chips. I don't see this happening.

At best the open router project could release software for hardware which is already a year or two old.

Sorry to be such a pessimist, but the incentives to make this work are just not there for the businesses involved.

netdog | 11 years ago | on: DEFCON Router Hacking Contest Reveals Major Vulnerabilities

I think the widespread insecurity of home routers will not improve anytime soon.

Background: I work at a company which makes a "home router". It's not one you will find at a big box store, but internally it's not much different.

Most of these routers are built from a MIPS SoC manufactured by Broadcom, Atheros, or Marvell. Since their business is selling chips, not routers, these SoC companies need to make it easy for your LanWan Company startup to choose to use their chipset.

So these SoC companies will give you a reference hardware design. They will also give you a completely functional software package with Linux kernel, drivers for all the peripherals (Wi-Fi, ethernet, etc.), all the necessary user space utilities, a complete GCC cross-compiler toolchain binary which runs on Ubuntu, and a bad web app. You can literally unzip this package, run 'make', and end up with a functional filesystem image ready to flash onto the reference board.

So LanWan startup can start manufacturing routers with only one or two software devs who know some C and a part-time hardware engineer. Manufacturing is contracted out to China.

The vendor-supplied C code is not written by expert programmers. It's obvious when you (try to) read the source. It's also a huge and messy pile of code.

Where I work we use the vendor-supplied kernel but we wrote all the user space ourselves. All this stuff is written in C. The software devs here have more than a few years of experience writing C, but are very uneducated about how to write secure code. They don't think about it. And management does not think about it. The only thing that matters to management is that the box passes the tests.

I've been around long enough to have figured out that things are like this in most places. Whether small companies or big companies doesn't matter.

netdog | 11 years ago | on: Verizon's accidental mea culpa

> That's not how the internet works. Nobody PUSHES data. People PULL data.

There's more to "the Internet" than just "the WWW". While HTTP could be considered a "pull data" protocol, there's plenty of application protocols which involve "pushing" data over TCP/IP transport.

netdog | 12 years ago | on: Ask HN: What encryption algorithms should we take as compromised?

> In general you should prefer crypto constructions which are a result of global competitions. For example AES and SHA3.

The judges who chose AES and SHA-3 as the "winners" of the global competitions are the NSA.

> You should avoid at all costs anything that has been standardized by NIST...

That would include AES and SHA-3.

netdog | 12 years ago | on: Unpythonic Python

My for-real-not-humor implementation:

    def fizzbuzz(i, n):
        while i <= n:
            yield i%15 and (i%5 and (i%3 and i or 'fizz') or 'buzz') or 'fizzbuzz'
            i += 1

    for x in fizzbuzz(1, 100):
        print x

netdog | 12 years ago | on: Which hashing algorithm is best for uniqueness and speed?

It's not surprising, and it is not peculiar to FNV-1a. Most of these hashes will exhibit this same behavior.

Since the hash iterates over the characters in the string, once you find two colliding strings S and T, if you append any other string to both S and T, the hashes of S' and T' will also be identical. Try it yourself:

    #include <stdio.h>
    #include "hash_32a.c"
    int main(int argc, char* argv[])
    {
        const char* s[] = {
            "altarage",
            "zinke",
            "altarage_foo",
            "zinke_foo",
            "altarage_xyzzy",
            "zinke_xyzzy"
        };
        int i;
        for (i = 0; i < sizeof s / sizeof (char*); ++i)
        {
            Fnv32_t x = fnv_32a_str(s[i], FNV1_32A_INIT);
            printf("%s: %08x\n", s[i], x);
        }
    }


    $ ./test_fnv1a
    altarage:       e460d8b6
    zinke:          e460d8b6
    altarage_foo:   3d8619c5
    zinke_foo:      3d8619c5
    altarage_xyzzy: 2a6373cf
    zinke_xyzzy:    2a6373cf

netdog | 12 years ago | on: The new Galaxy Note 3 is region-locked

Samsung's customers are the carriers. The carrier asks Samsung for specific features or changes in the firmware build for the phones they buy from Samsung. Samsung satisfies their customer by giving them what they want.

The carrier is who you should gripe for the firmware misfeatures which you don't like in their phones. But due to the monopoly situation, they don't have to care very much what their subscribers think.

netdog | 13 years ago | on: Can websites personally identify visitors?

There was a time, in the not-too distant past, when the Internet was mostly about sharing educational information.

Sadly, the Internet is now full of companies who want to use it as a vehicle for advertising and who are obsessed with building up a dossier on as many people as possible, to exploit for financial gain. Your privacy means nothing to these companies; they will collect as much information about you as possible, with no regard for your wishes.

I take active countermeasures against these hostiles. I browse with javascript disabled. I don't have flash installed. I don't accept cookies blindly. I adjust my user agent. I run my own DNS server and cache and have hundreds of sites blackholed, including facebook, google analytics, and all the major ad servers.

It's some trouble to set all this up, and inconvenient at times. But unfortunately it's a jungle out there, and the default setup of browsers leaves you like a naked person in a mosquito-infested swamp.

netdog | 13 years ago | on: Napolitano: I don't use email at all

email is a useful messaging system.

However, email is not: 1) a reliable messaging system, 2) a secure messaging system, 3) a private communication conduit.

page 1