Docker Releases Plugin for Simplified Deployments into AWS - <AUTHOR> https://www.infoq.com/news/2020/07/docker-ecs-plugin/ <comment><USER2> None of this is simple. We're drowning in YAML files. It's difficult to maintain. Jinja + ansible + helm... it's a joke.

There must be a better way of doing all this.

<comment><USER3> The real problem is, people are deploying dozens of different coding languages, any technology that whimsically passes by, and replacing simple, streamlined monolith technology with 100 micro services.

All of this is endlessly pushed by AWS, Google, Docker, and anyone else with a foot in the "Snag as much cash from DEVs" crowd.

Other old timers will explain how they ran thousands of hits/second on 6 or 7 bare metal servers, 15 years ago, without CDNs, using LAMP, ajax/js frontends, and more. The key was code optimization, SQL queries without inane and poorly written MVC SQL logic, and the list goes on.

I am relentlessly gobsmacked at how people are spending quite literally 100 to 1000 times the cash to host on AWS, using microservices. And often amused how new devs just can't get it through their head, that yes, this is 100% factually true.

Docker replaced something that was already done ; identical PROD and DEV environments. All DEVs I had working with me, were issued VMs with 100% replicated PROD. VMs auto-build using debootstrap + SVN checkout.

Rollbacks in prod? Handled by SVN rollbacks.

When I look at the insane complexity being displayed by containers on top of VMs on top of baremetal, the MASSIVE loss in performance (yup, it's there.. especially for IO)... I just don't get it.

Many DEVs have all been sold a pack of complete and total lies.

I get called in again, and again by clients to reduce cost, optimize resource usage. I literally bring 1000x performance boosts to the SQL layer with minimal improvements.

Anyhow. Yes, this was a rant. Sorry it's a reply to you specifically.

<comment><USER4> Docker images are just lighter weight VMs. Or to be more accurate, they accomplish the same goals as full VMs in a different way.

If you're running Docker in a VM on a bare metal server you're doing it wrong. You should be running Docker on a bare metal server.

You're also conflating different problems here. If someone is writing poor SQL it doesn't matter if their deploying with a VM, Docker, or onto a bare metal server.

<comment><USER5> > they accomplish the same goals as full VMs

Not if you're doing things that require certain kernel features. For example, if I have an application that uses io_uring, it's _very_ pertinent as to which kernel it runs on. A VM has that in scope, a Docker container does not.

<comment><USER2> Exactly. io_uring is a game-changer for linux.

</comment></comment></comment></comment></comment><comment><USER6> I am in the process of migrating my stack from Elastic Beanstalk multi- container to Fargate so this looked like an interesting thing I could 'pick up'.

This does potentially unify the container definitions between compose and ContainerDefinitions in the task definitions, but for my self, that's not a super helpful tool.

Much of the complexity of running Fargate is outside of Fargate, wiring everything up so Route 53 => CloudFront + WAFv2 => ALB => TargetGroup => Fargate w/ security groups, subnets underpinning it all.

I can't recommend looking at this seriously as something to run in production. CloudFormation/Terraform is still the best place to sink your time.

<comment><USER7> I just spent this weekend setting this up to learn a bit of AWS for a toy project. I thought I would "just" quickly drop a Rust API server image in an ECS cluster.

By the end of the weekend, I had the architecture you describe.

\- Route53 alias A record -> ALB DNS name

\- LetsEncrypt cert in IAM

\- ALB listener doing SSL termination using the cert -> forwarding to target group

\- ALB listener doing 80->443 redirect

\- Security group on ALB listener allowing only approved IP ranges in (not ready for this thing to be public yet)

\- Security group on ECS service only allowing ALB to connect

\- ECS cluster using Fargate

\- RDS instance only allowing ECS service to connect

\- CloudWatch log group for the container logs

\- Subnets

\- Secrets Manager for pulling Docker images from private GitHub Packages repo

Did it all in Terraform, and then added GitHub Actions to the Terraform repository to do _terraform validate_ on PR and _terraform plan && terraform apply -auto-approve_ on merge.

Then, yesterday, hooked up GitHub Actions on the Rust API server repository build a version tagged image and publish it to GitHub packages, create a PR in the Terraform repository to update the ECS task definition for the new image, and if it passes the PR checks, automatically merge it (which triggers the Terraform plan/apply run).

It did seem complex the first time I did it, but looking back over both the AWS and GitHub Actions configuration, I wouldn't change too much. I feel fairly confident this is secure, and I understand most of the configuration options and why they are there. Something that "simplified" it for me would just become a straightjacket as I get more proficient with AWS.

IaC 101 I guess, but I was chuffed when the Rube Goldberg machine whirred away after making a code commit to the Rust repo, and two minutes later my new code was running on ECS :)

Considering writing up a blog post about it just to firm up my own understanding as well...

<comment><USER8> What you're describing is what I sold the company on last year (save Letsencrypt, that's weird but whatever).

We only use terraform for the initial burn in (VPC, 2x public/2x private subnets, empty lb, bastion, and some subnet groups) but the rest is one to one.

Fargate isn't the cheapest platform out there but it's great for "I don't have any ops people" or "I have a fraction of several ops people not dedicated to my product." It takes a lot of patching and maintenance out of the equation.

If you want to give yourself a huge resume item, hook AWS WAF into the load balancer and play with it (you can alternatively hook it into Cloudfront if you elect to implement that in front of your LB, though then you have to make sure you protect what Cloudfront is talking to).

Easy task would be to geoip limit your application to the US, Canada, and Mexico. You can verify this by running your site through uptrends and looking at what cities get 403ed [https://www.uptrends.com/tools/uptime](https://www.uptrends.com/tools/uptime)

</comment></comment></comment><comment><USER9> This is far from the first time, but I have a weird dirty feeling when i see infrastructure management tools directly reference specific service provider IaaS/PaaS services.

It's the most direct route vs formalizing a standard but, uglh.

<comment><USER10> How do you have a "standard" without each provider having to wait on a committee anytime they want any improvements?

Even the almighty Terraform which for some reason people still think makes it easy not to experience "cloud lock-in" has cloud specific provisioners.

<comment><USER11> In my opinion, being cloud-agnostic is today's being database-agnostic.

In more than two decades of professional software development, I have only once encountered a situation where an existing application was migrated to a different RDBMS instead of just being rewritten. Using an ORM framework for the sake of database independence seems hardly justified in that case.

I suppose that things will turn out much the same with cloud agnosticism.

Similar to the RDBMS case, being agnostic of the underlying technology prevents you from using that technology's more interesting features, to the extent that you're treating a database as a dumb data store or cloud hosting as a mere space for hosting your files.

<comment><USER12> I mostly agree with you but we definitely reduced reliance on AWS specific functionality after starting to offer on-premise software installations. Most of them don't gain you THAT much and then the software really isn't very portable.

<comment><USER13> I question this logic - there seem to be fundamental differences in even the basic services between various cloud providers. For example you can resize a compute-attached disk size live in GCP while you can't in AWS. Many intricacies like this are annoying, but at the same time advantageous if you know and use them. If you are primarily trying to just offer another layer on top of these cloud services, (like snowflake) where cross-cloud compatibility is part of your selling point, then it makes sense to abstract the cloud layer. Otherwise, I feel like it's better to choose a reliable vendor and stick to them, optimizing according to their strengths/weaknesses. Or go cross cloud but for very specific technologies (iirc BuzzFeed did this).

<comment><USER9> Not the person you are replying too but some industries have regulatory mandates for vendor diversity in cases like this.

In addition, when your bills get to millions per month, the provider supplies quite a bit of TAMs and technical resources to your account. This can be helpful, but they also get a good understanding of where you are and are not in a position to dip out if things get sideways in billing. (Also, other providers will throw 6-7 figure credits your way to earn your business, being in a position to leverage them is a good thing.)

>Many intricacies like this are annoying, but at the same time advantageous if you know and use them.

This is very true. Building services or features that depend upon these is a good idea. Enshrining them deep within your assumptions and requirements about how you operate cloud-based workloads can work against you.

<comment><USER10> When your build gets to be "millions per month", you are already locked in. Any migrations is going to be a painful multi year progress. "Infrastructure has weight".

Have you been part of an integration with a health care system? They are so tightly locked in to their existing EMR/EHR system it would make you cry. Every third party vendor that comes along has to integrate with it.

Part of the work I did at the company that I mentioned where I was a dev lead involved migrating our company from Workday. Their entire process was integrated into it.

<comment><USER9> You're definitely locked in at some level, but if you are able and even demonstrate the ability to swing 30% of your workload over to another provider in a quarter, you're going to maintain some leverage.

Yes, have worked in healthcare on and off over the past 20 years and know precisely of what you speak. That's a different situation IMHO, same with ERP/HR/etc.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> Disclaimer: I'm entirely biased. I am the CEO of Qovery.

I created [Qovery]([https://www.qovery.com](https://www.qovery.com)) to address this problem of simplifying the Cloud. Allow streamlining the use of the Cloud for any developer. Today traditional players stack layers to simplify what they have created but without going out of their way of seeing things.

Qovery makes application deployment very pragmatic for developers because we put ourselves in their shoes. How does a developer think? He simply thinks about his code and wants to focus on his mission, which is to address business issues and not all the plumbing around it.

<comment><USER15> Unrelated, why are you using parallax effects on your landing page? It works really poorly when I scroll down fast.

<comment><USER16> Scroll down slower

<comment><USER15> I tried but when I scroll down slower I have to wait for the content to slide in from the left or from the right, or to assemble at random. Still no good.

</comment></comment></comment></comment><comment><USER17> At my current startup, we're building something like this.

A "catalog" of architectures that you could use to create a complete cloud architecture on your AWS, GCP or Azure account in less than one minute.

For example, you could create a docker-based architecture with CI/CD, auto- scaling, zero downtime deployment, SSL, load-balancing, high availability and MongoDB in less than one minute in your own AWS account.

Like Terraform with the user-friendliness of Heroku.

<comment><USER18> AWS in theory has a product called service catalog that fills this role. It's not super fun. Or at least my interactions with havn't been so great. Good luck.

<comment><USER17> Thanks!

We've released an alpha version, with only one architecture, some days ago.

If you want to learn more, I've written a blog post: [https://medium.com/revolv2/im-building-revolv-to-automate- cl...](https://medium.com/revolv2/im-building-revolv-to-automate-cloud- architecture- creation-35a6e8b0b411?source=friends_link&sk=ef93b060f5094b920d5b8435ecc372f6)

<comment><USER19> I think your product would work great as an "a la carte" consultancy, it seems well aligned with startups which may have some incentives to pick particular pieces but need help to wire it together - and already need to allocate a developer's salary to do it.

<comment><USER17> Interesting, thanks!

When you say "'a la carte' consultancy", do you mean with a one-shot payment?

Do you think that the "user-friendly" features (deployment monitoring/rollback, CI on all branches, health monitoring...), that you can't have with Terraform only, are useful enough to ask for a recurring one?

<comment><USER19> What I mean is that early stage startups will have to bootstrap some cloud infra, but their engineering teams are laser focused on creating value for their users and validating product market fit. Every day that a technical founder/early hire spends writing their cloud story is a day taken away from their runway without (directly) creating value that could lead to revenue or funding.

People will pay you to build out their cloud infrastructure one feature at a time, or pick features off the cart as they want them (so maybe like an all you can eat cloud buffet?). There's a bonus to that too, iterative consulting is a great way to validate a tech stack for a problem domain before you figure out how to turn it into a recurring revenue source.

AWS for all its flaws is actually pretty good for this already, which I think is why it gets so popular with seed stage startups before they get locked in (plus the credits that they give out like candy...). I don't have to think about architecture, I google what aws cli command I need to set stuff up and move on with my life.

<comment><USER17> Thanks you very much! It's very interesting.

It's exactly what we've started to do: targeting startups in incubators.

DevOps people in early-stage startups are not very common, so it's seems safe to say that a Devops-as-a-service may be useful for them.

</comment></comment></comment></comment></comment></comment></comment><comment><USER20> I have the feeling that docker compose only supports a small subset of ECS. ECS has stuff like Load Balancers, schedulers and a parameter store in very specific ways. I don't think you'd want to use docker compose for that on AWS.

</comment><comment><USER21> Just eat the frog and learn Terraform or Cloud formation.

<comment><USER22> > eat the frog

Eat the frog? Which language is that? The expression sounds really cool!

Most of the time in English I've encountered "bite the bullet".

</comment></comment><comment><USER23> Hang on, I thought Docker _was_ a tool for simplifying deployments into AWS.

</comment><comment><USER24> I am pretty new to this space, but isn't one of the main advantages of WASI the fact that we can skip a lot of this containerization and simplify deployment?

</comment><comment><USER25> This looks like spending extra effort to further couple your CD and infrastructure to ECS.

</comment><comment><USER26> I guess Docker gave up on Swarm?

<comment><USER27> Curious to know why you think so? ECS is a managed service. If Swarm was a managed service on AWS, I'd agree with you here but that's not the case.

Swarm is still brilliant for running multi-node deployments.

<comment><USER28> Mirantis purchased Docker Enterprise at a firesale price last year. They've pledged support for two years, and they say they will be "continuing to invest in active Swarm development," but the writing is probably on the wall. Their release was more excited about K8s.

<comment><USER29> Which is disappointing. Swarm is infinitely easier to setup and get running, and it scales down / uses WAY fewer resources than k8s.

</comment></comment></comment></comment><comment><USER30> I never understood why people use Docker. QEMU exists

<comment><USER31> Whether it was luck or hard facts, Docker became the standard and default nearly to a point where juniors only knowing how to program a "Hello World!" webservice will dockerize it. It's an ubiquitous technical skill like basic SQL.

As someone who has very low interest in container technology itself, I have zero reason to inform myself about QUEMU..

<comment><USER30> [https://qemu.org](https://qemu.org) is VM host software, like VirtualBox, but FOSS. Instead of a Dockerfile I have a shell script spin up a VM and install the dependencies for me.

</comment></comment></comment><comment><USER32> Exciting news for Docker community. In our organisation we use ECS service to orchestrate our services within AWS eco system.

On a different note, recently I was looking to learn AWS concepts through online courses. After so much of research I finally found this e-book on Gumroad which is written by Daniel Vassallo who has worked in AWS team for 10+ years. I found this e-book very helpful as a beginner.

This book covers most of the topics that you need to learn to get started:

If someone is interested, here are the links :) Single License: [https://gumroad.com/a/238777459/MsVlG](https://gumroad.com/a/238777459/MsVlG) Team License: [https://gumroad.com/a/238777459/EpUED](https://gumroad.com/a/238777459/EpUED)

I highly recommend buying this e-book if you think AWS documentation is overwhelming.

<comment><USER33> You are literally trying to sell product in every single post you make.</comment></comment>


Show HN: Lightweight Article Text Extractor - <AUTHOR> http://extractarticletext.com/ <comment><USER2> No results show up. Is the queue working atm?</comment>


/dev/random – a new approach - <AUTHOR> http://lwn.net/Articles/684568/ <comment><AUTHOR> If I read this correctly, this new suggestion also keeps the entropy estimation voodoo:

"By using the primary DRBG to serve /dev/random, the LRNG ensures that each random number generated by the primary DRBG must be backed by an equal amount of entropy that seeded the DRBG. Hence, the data derived from /dev/random is backed by information theoretical entropy."

(page 21 of the PDF documentation)</comment>


Learning Ada - <AUTHOR> https://words.steveklabnik.com/learning-ada <comment><USER3> I learned Ada because I took a new job back in 2008 (at Boeing, doing spacecraft modeling and simulation) and discovered on my first day that I would be using Ada. Naturally, I was expected to just pick it up on my own (Not complaining, that's pretty much how it goes these days).

My mother (who found it amusing I was going to be coding Ada in 2008) gave me her old Ada books from the 80s (her employer at the time sent her to an actual course to learn the new DoD mandated language, back in the days when employers invested in their people), which I still have. I ended up programming in Ada up until 2012, when I managed to get a job using Java.

The language itself I rather liked (better than Java, for sure). It's the only language I've ever used that tended to produce programs that worked correctly on their first run (getting them to compile was the difficult part). The aerospace industry OTOH, I don't miss.

<comment><USER4> > It's the only language I've ever used that tended to produce programs that > worked correctly on their first run

From my experience that is generally true with languages that have strong static type systems (like Haskell and Rust).

<comment><USER5> Scientific research on the source of bugs shows that type-related bugs are a minority.

<comment><USER6> Well, there's a bit of a problem in how you're qualifying things. For example, certain things that aren't obviously handled by the type-system might be.

One example would be loops and off-by-one errors. For the case of For-loops on arrays Ada's solution arguably does so via the type-system; in Ada arrays "know" their own length, start- and stop-index and these are query-able via attributes.

So, given Function Sum( Input : Integer_Array ) return Long_Long_Integer you could for-loop on the parameter, querying the 'Range attribute -- yielding a possible implementation of:

Function Sum( Input : Integer_Array ) return Long_Long_Integer is Begin Return Result : Long_Long_Integer := 0 do For Index in Input'Range loop Sum:= Sum + Long_Long_Integer( Input(Index) ); End Loop; end return; End Sum;

And the entire problem is avoided via the type-system.

</comment></comment></comment></comment><comment><USER7> I miss working in Ada, but I don't miss the industry.

Working in SPARK Ada and Prolog early in my career taught me the importance of understanding what the "philosophy" of a language was in order to use it well. After far too much time spent trying to make them behave like a different language it clicks and then you get productive.

I think it's made me much more tolerant of new languages and more forgiving of my struggles when first learning them. Some times it can take a while to understand what idomatic programs look like in a new language, especially when it's a very differnt model to ones you have been used to.

</comment><comment><USER8> I started reading about Ada back when it was still called "Green". One of my co-workers was one of the (very large) group of people invited to evaluate the candidate languages, and he let me read the draft proposal for the Green language. I learned Ada and used it in several projects throughout my career. It was one of those "good ideas" the Defense Department came up with that didn't quite work out.

At the time the programming language that became Ada was proposed, the Defense Department had somewhere around 700 programming languages being used in various projects. A project looking to add staff had very little chance of finding someone who knew the language being used. They had to hire an experienced programmer and expect that he would be able to get up to speed on the language being used in time to meet the (often unreasonable) deadlines. Ada was intended to replace many or most of those 700 programming languages. It sort of worked for a while. A lot of smart people worked on developing the language, and it was used in a lot of projects. The problem was that it never got wide adoption outside of defense contractor companies and aviation companies, and sometime back the Defense Department dropped the mandate that all new projects had to use Ada.

Ada is still being used in some fields, especially in some Defense Department projects, avionics and air traffic control, but it isn't in the TIOBE top 20 list of programming languages. Unless you're planning on making a career of working on defense projects, Ada probably isn't a language you should think about learning.

<comment><USER9> > Ada is still being used in some fields, especially in some Defense > Department projects, avionics and air traffic control, but it isn't in the > TIOBE top 20 list of programming languages. Unless you're planning on making > a career of working on defense projects, Ada probably isn't a language you > should think about learning.

I guess it depends:

1\. Ada, associated with SPARK, constitutes one of the most cutting edge technologies when it comes to automated proof for embedded code. This has encouraged some very cutting edge users such as NVIDIA to invest into Ada/SPARK ([https://blog.adacore.com/nvidia-blogpost- announcement](https://blog.adacore.com/nvidia-blogpost-announcement))

2\. Learning a new language is always interesting. If you are interested in embedded programming in general, there are few languages more interesting than Ada today IMHO. I would probably tell somebody "Learn C/C++, Ada and Rust".

</comment></comment><comment><USER10> WRT "out" parameters, it means that very literally. There the variable is only passed out, it is not passed "in." Steve's test never assigns "A" in Foo() so "A" is an uninitialized variable that then gets stored in the mainline "A" (which has the same name, but is an entirely different variable). The mainline "A" is assigned the value 12 but then gets overwritten by the uninitialized value passed out by Foo().

       with Ada.Text_IO; use Ada.Text_IO;

       procedure Outp is
          procedure Foo (A : out Integer) is
          begin
             Put_Line (Integer'Image (A));
          end Foo;
          A : Integer := 12;
       begin
          Foo(A);
       end Outp;

A clearer example would be:

       with Ada.Text_IO; use Ada.Text_IO;

       procedure Outp is
          procedure Foo (A : out Integer) is
          begin
             Put_Line (Integer'Image (A)); -- Uninitialized variable, random value
             A := 42;
             Put_Line (Integer'Image (A));
          end Foo;
          A : Integer := 12;
       begin
          Put_Line (Integer'Image (A));
          Foo(A);
          Put_Line (Integer'Image (A));
       end Outp;

This will still give the uninitialized variable warning (typically can and should configure the compiler to turn that into an error, not a warning).

Playing compiler, the output should be

       12 -- Outp()
       <random value> -- Foo()
       42 -- Foo()
       42 -- Outp()

You can make variables in and out by saying that (literally). This will do what Steve expected:

       with Ada.Text_IO; use Ada.Text_IO;

       procedure Outp is
          procedure Foo (A : in out Integer) is
          begin
             Put_Line (Integer'Image (A));
          end Foo;
          A : Integer := 12;
       begin
          Foo(A);
       end Outp;

<comment><USER11> Also, added in a recent version of the language (as part of 2020) you can simply use 'Image directly on an object saving you a bit of typing : ). And let me let you in on a secret Ada programmers don't talk about or put in examples - you don't have to type the Identifier at the end of the procedures!

       with Ada.Text_IO; use Ada.Text_IO;
       procedure Outp is
          procedure Foo (A : in out Integer) is
          begin
             Put_Line (A'Image);
          end;
          A : Integer := 12;
       begin
          Foo (A);
       end;

<comment><USER12> Ooh, I like that new 'Image usage.

I was told that adding the identifier to the end of blocks is just a good practice, since the compiler can tell you if you misread the nesting and wrote the wrong name.

</comment></comment></comment><comment><USER13> When I learned Ada, I used the wikibook [1] and bought an inexpensive used textbook from Amazon. I have a basic competency of the language, and really like the quality of the compiler toolset, the type system, the "DIY" OOP (as I call it), and the packaging system. My biggest issues with it are that bindings for databases, graphics libs, and web development libs are few and far between and usually just a lonely github repo. But, as another positive, writing bindings to C libs seems pretty easy [2], so someday I'll give it a try.

[1] [https://en.wikibooks.org/wiki/Ada_Programming](https://en.wikibooks.org/wiki/Ada_Programming)

[2] [https://flyx.org/2012/06/13/adabindings1/](https://flyx.org/2012/06/13/adabindings1/)

<comment><USER14> I think this is the death knell of most people trying to casually pick up Ada or most used-but-not-extremely-popular languages from the 70's and 80's, our expectation of doing something meaningful and sensible has just moved so far that not having the supporting libraries means a lot of upfront work. I think I've gotten stuck here for LISP, getting back into Pascal, Ada, and probably some other languages I wanted to experiment building a modest size application with.

It really shows how valuable having that very active and mature core library or managed package library is to a language. I did the same learning path as the prior poster but then just ended up stuck.

<comment><USER13> Part of it is admittedly laziness and used to a certain convenience. There's no package manager for the language, and OS package managers rarely carry used-but-not-extremely-popular language bindings. But the code is out there, like this SDL2 binding: [https://github.com/Lucretia/sdlada](https://github.com/Lucretia/sdlada)

</comment></comment></comment><comment><USER15> I watched the whole Ada process (a series of reports that developed into the language spec). While often criticized at the time of being 'designed by committee' that wasn't really the case, but did have a lot of people critiquing it. It was a great language once you understood how to structure your programs. I think it would have had much better uptake if there were free/open source implementations of it back then, but I don't think the DoD even considered that, so it cost quite a bit of money to experiment with it and very few students had a chance to use it.

<comment><USER16> I'd argue it is largely true now. If the free version is GPL'd, students can easily use it, but a lot of folks won't want to develop in something that has what is likely to be a high commercial cost. I'm still curious how much they would charge me to use the commercial version to write some scientific software that will likely have no customers. Would they be lenient and not try to charge what they would for a developer at Boeing? I'd love to know as Ada and Spark just seem really cool.

<comment><USER15> There is GNAT [https://www.gnu.org/software/gnat](https://www.gnu.org/software/gnat)

<comment><USER16> That's what I'm referring to. I believe there is a runtime clause that means a program (Ex: hello world) isn't automatically under the GPL. However, a lot of the Adacore libraries are either GPL or commercial. At least this is how it has been explained to me.

</comment></comment></comment></comment><comment><USER17> Ada was the first language I learned at the University of North Dakota's Computer Science program in 1996.

Since the university is known for its Areospace program, I guess that made sense to pick Ada as their primary language.

<comment><USER18> Interesting, in Fall of 1988, University of North Dakota was using Modula-2 as the starting language for their core classes having switched from Pascal in the Summer. The classes were taught on an IBM 370, so students also got to learn the joys of Xedit, IBM terminals, EBCDIC, and batch processing. They only used Ada for the Software Engineering class which I took and was very disappointed in, but not the language which I liked. Lisp was not fun on the VAX.

One of the things I'm a bit ticked about is that they moved the CompSci program from Aerospace to the School of Mines and Engineering. So, just as the drone era is starting they move CompSci to better align with other colleges. What a crock.

<comment><USER19> Oh cool, a UND Computer Science Alumni hangout. I started with Pascal on the IBM mainframe VSPC in the fall of '83\. Batch processing was a shock coming from an Apple ][ background in high school. Was nicer when we got access to the interactive machines like the VAX and the PDP/11\. I liked Ada, vaguely remember it being on the VAX.

Still have my photocopied manual for BSD 2.9 on the PDP/11 - never imagined at the time that that Unix stuff would take over the world. Nice to have had that early exposure.

<comment><USER18> They still had VSPC in 85, but had switched to CMS by 87. The punch card reader / printer ended in 85, and somewhere in a box I got a stack of cards. I took C on the VAX (they bought a AT&T 3B2 somewhere around 90 or 91), and I do vaguely remember Ada was on the VAX also.

My early hate of Lisp was a direct result of them teaching it on the VAX. I was told the VAX had 4MBytes of actual memory and the each Lisp instance took 5. I played poker in the basement of Upson II while the damn thing loaded my program and played more while it ran. Being a lover of Forth at that point, tended to make me think Lisp was a bit of a hog.

Somehow the school got a Cray (I think from a oil company), but they weren't given the manuals right away. The manuals that they printed came from microfiche I had. I'm not sure if any students ever got to use it.

UND did give a unique experience in a CompSci degree.

<comment><USER19> Never got to touch the Cray, but did some Fortran work on a Perkin-Elmer minicomputer the Aviation department had.

Looking back, in the space of 3 years I got to work on quite a few completely different OSes (VSPC, VM/CMS, MS-DOS, VMS, Unix, whatever the Perkin-Elmer was) and languages (Pascal, 370 assembler, PL/I, Fortran, Lisp, Ada, C)

I wonder if kids nowadays get that kind of broad experience.

</comment></comment></comment></comment></comment><comment><USER20> Syntax is a sore point for me, but as a polyglot, I push through my bias. I am learning Spark instead of full Ada, and instead of Rust for a project simply because there is a lot of precedent and libraries for what I need to do - <USER2> machinery controls package with high-level safety. I do like Rust though, but I am also playing with Zig for good measure.

</comment><comment><USER21> Wikipedia > "Ada was originally designed by a team led by French computer scientist Jean Ichbiah of CII Honeywell Bull under contract to the United States Department of Defense (DoD) from 1977 to 1983 to supersede over 450 programming languages used by the DoD at that time."

Wow, it is mind blowing to me that 450 different programming languages existed in the late 70's. Do we know what most of these were? Do most exist today or have they been lost to time?

<comment><USER22> Many were variants or specific implementations of other languages (like Algol), or assembly languages for numerous machines. Remember, this was pre- Internet. A lot of languages were developed because an office needed them for a specific application. Or they knew the theory (enough at least) of a language but didn't have an implementation for their hardware or OS, so they made a new one if they couldn't purchase one. And when you develop the language in tandem with the application, you end up with something custom and non-portable (or hard to port).

</comment></comment><comment><USER23> I've never used Ada, but some of the graybeards I talk to have said that it's sort of like a predecessor to Rust, at least in some of the same concepts of safety with an emphasis on performance.

With the risk of having my foot planted in my mouth, how "systems-ey" is Ada? Could I conceivably write an OS in nothing but Ada (and obviously a bit of assembly to kickstart it), similar to something like Redox-OS in Rust?

<comment><USER24> A few OS's and a micro-hypervisor done in Ada or SPARK including a high- assurance, secure kernel for Ada apps with strong isolation and leak resistance. Given its main domain, Ada is often used to write bare metal with no OS or for the app (not OS) in a runtime on top of a RTOS. They're usually C and/or assembly since those are dominant for OS work.

[https://www.muen.sk/](https://www.muen.sk/)

[https://marte.unican.es/](https://marte.unican.es/)

[https://en.wikipedia.org/wiki/BiiN](https://en.wikipedia.org/wiki/BiiN)

[https://apps.dtic.mil/dtic/tr/fulltext/u2/a340370.pdf](https://apps.dtic.mil/dtic/tr/fulltext/u2/a340370.pdf)

[https://www.researchgate.net/publication/220713695_Specifica...](https://www.researchgate.net/publication/220713695_Specification_and_Verification_of_the_ASOS_Kernel)

Note: This one is also downloadable on ACM or IEEE. I got it off of one of them. Has good example of Gypsy language for verifying systems.

<comment><USER25> Since you mentioned BiiN we can add its predecessor to the list. The iMAX operating system for Intel's first 32 bit processor, the iAPX432 (which Intel likes to pretend never existed), was written entirely in Ada.

[https://cs.uwaterloo.ca/~Brecht/courses/702/Possible- Reading...](https://cs.uwaterloo.ca/~Brecht/courses/702/Possible- Readings/oses/imax-multiprocessor-os-sosp-1981.pdf)

</comment></comment></comment><comment><USER26> camelCase, snake_caske, PascalCase, kebab-case, so I think I'd call that Pascal_Snake_Case or something. Other than that this is really great, Ada is pretty neat and used in the most critical systems in the world: [https://www2.seas.gwu.edu/~mfeldman/ada-project- summary.html](https://www2.seas.gwu.edu/~mfeldman/ada-project-summary.html)

<comment><USER27> Yeah, I got hung up on exactly what to say and then was like "Steve, you're trying to learn Ada, not trying to determine what this case is called" and just wrote something. I like Pascal_Snake_Case, I'll update the post. Thanks.

</comment></comment><comment><USER28> Funny how trends work, Ada is popping up in mainstream places (considering HN mainstream somehow, also reddit) recently.

<comment> ainar-g Ada has always had a reputation for being a more secure system-level programming language, and _thankfully_ security is very much _in_ right now. I think Rust has played a significant role in this mini-resurrection of Ada.

<comment><USER28> Much probably. Safe + low level was synonymous with Ada but it wasnt trendy

</comment></comment></comment><comment><USER29> I've learned Ada at uni - while I didn't appreciate it at that time, probably currently (almost 10 years later) I'd find it more interesting. Fact that your application doesn't compile if you don't write assertions validating it certainly has gained more appeal to me.

</comment><comment><USER30> Back in university (~2005/06) I still remember the "concurrent and distributed programming" course, held by an _extremely_ opinionated professor who was an Ada enthusiast and spent half of the lessons bashing Java and its lack of proper constructs for concurrent programming. We all at the time commonly agreed to hate on Ada :) (it was not a popular professor)

</comment><comment><USER31> Ada looks extremely similar in syntax to PL/SQL - Oracle's database-side programming language. In fact, I wasn't too surprised to find out that its original syntax was borrowed from Ada.

[http://www.orafaq.com/wiki/Ada](http://www.orafaq.com/wiki/Ada)

<comment><USER32> I believe they're descendants of ALGOL along with PL/1 and Pascal, which explains the similar syntax.

</comment></comment><comment><USER4> I really like the format of this article. From my very brief experience with Ada it seemed like a very well designed language to me. It's a shame it didn't get popular enough to compete with C and C++.

<comment><USER11> Yea Ada 95 was set to take off in some sort of way, but Java came out just a bit earlier and crushed it with publicity - and then Javascript was "birthed" in 2 weeks and ruined software forever..

<comment><USER33> It is fair to mention that when javascript was created it was indeed the best tool for the job

<comment><USER34> If browsers used SmallTalk we would leapfrog about 30 years of reinventing the broken wheel and everyone would be better off (except maybe a few overpaid framework experts).

<comment><USER35> Assuming there would have been the same rate of adoption. I don't know, is it as easy to learn SmallTalk and do small tasks with it?

The existing ecosystem may have been pretty good, all things considered. Fast ramp-up, with eventual shift into supporting bytecode efficiently so any language can run.

Would you rather be coding around the inconsistencies in the SmallTalk implementations of Microsoft, Google and Mozilla, or just delivering a bytecode package of your code in whatever your favorite SmallTalk implementation (or any other language) is?

<comment><USER36> > is it as easy to learn SmallTalk and do small tasks with it?

BASIC would be better than Javascript.

C would be better than Javascript.

Literally anything else, would have been better than Javascript.

[http://archive.oreilly.com/pub/a/javascript/excerpts/javascr...](http://archive.oreilly.com/pub/a/javascript/excerpts/javascript- good-parts/bad-parts.html)

[https://www.destroyallsoftware.com/talks/wat](https://www.destroyallsoftware.com/talks/wat)

[http://www.javascriptgotchas.com/gotchas/common- javascript-e...](http://www.javascriptgotchas.com/gotchas/common-javascript- errors-and-mistakes.html)

[https://medium.com/javascript-non-grata/javascript-is-a- dysf...](https://medium.com/javascript-non-grata/javascript-is-a- dysfunctional-programming-language-a1f4866e186f)

[https://whydoesitsuck.com/why-does-javascript- suck/](https://whydoesitsuck.com/why-does-javascript-suck/)

[https://softwareengineeringdaily.com/2015/12/09/javascript-t...](https://softwareengineeringdaily.com/2015/12/09/javascript- the-bad-parts-with-john-k-paul/)

[http://blog.thefirehoseproject.com/posts/why-im-angry-at- peo...](http://blog.thefirehoseproject.com/posts/why-im-angry-at-people-who- only-learn-javascript/)

<comment><USER35> > C would be better than Javascript.

Yeah, I don't think so. No matter how bad Javascript is, C would be way worse. Every problem of C ported to the web so all those bad practices that are mostly harmless because they are usually in simple programs with no network access when local program all of a sudden being entirely exposed.

</comment></comment></comment></comment></comment></comment></comment><comment><USER28> the <receiver>'<method> syntax killed me as a student, killed me hard. That's half the reason I went deep into Lisp.

</comment><comment><USER37> The title should be "Why Rust is superior to Ada in 5 minutes".

He is not trying to learn Ada.

<comment><USER27> You can think whatever you'd like, anonymous hacker news account created for this comment. Everyone can read ill will into things.

I am trying to understand Ada better. I draw some comparisons to Rust because that's one of the reasons why I'm reading about it in the first place: people ask questions comparing the two and I have no idea of the answers.

I spent much more than five minutes here, even though the writing is short; the learning website has a lot of stuff! As I said I'm the intro, this is mostly just a log of thoughts. But it was a good solid half-day of investigation. I'll be doing more of it in the future, too.

<comment> ainar-g Thanks for the write-up. It pretty much mirrors every thought I've had while reading the same tutorial, except that I personally find That_Funny_Ada_Case weirdly appealing.

And, since you're here, you probably have a typo: "GNATT" in the paragraph about threads should be "GNAT".

<comment><USER27> Thanks for the thanks, and for the typo spotting! I've fixed it.

</comment></comment></comment></comment><comment><USER38> Just some log of initial negative emotions. Maybe author forgot, but Rust can raise negative emotions on the initial stage also. It takes some effort and it worth it. Maybe with Ada it's the same.

<comment><USER39> How did you read negative emotions into that? Most of it was "oh, cool! I wonder if..." or something like that.

<comment><USER38> It mostly "it doesn't work as I expect, cool". So yes, I read it as negative emotions.

<comment><USER35> Were you reading that as sarcasm? From Steve's other writing I've seen, and his comments here, I don't think he was being sarcastic. I think he's literally expressing something along the lines of "Oh, that's not what I would have assumed, but it's an different way that I may or may not have thought about much. That's cool, I'll see how it goes."

If that interpretation comes across as negative, then I think you either must view most interactions with the world as negative or you've somehow managed to surround yourself with "yes" men...

</comment></comment></comment></comment><comment><USER40> Interesting. I would have guessed that a person contributing to what's touted as the new safest language ever, should already be familiar with prior art in the field. Otherwise one would be prone to unnecessarily reinventing the wheel...

Better late than never I guess.

<comment><USER41> What a weird expectation

<comment><USER42> Yes and no. No, if one is designing something that will be state of the art, it is not unreasonable to expect that the designer knows what the previous state of the art is.

But yes, it's weird. First, he's not a designer of the language. Second, there are too many languages for anyone to be intimately familiar with all of them.

And third, there's just this weird bunch of very negative comments. What's up with that? You don't like Rust? (Not you, lukebitts, but the original commenter.) Fine. Don't use it. You don't like the publicity it's getting? You think your language is better? Languages are tools; they're not rock bands. Feel free to like and use yours. Rust doesn't take anything away from that. You don't like _Steve_? You think he's getting too much attention? He's getting it for useful, informative contributions. You want that kind of attention? Go and do likewise, rather than whining and sniping because someone else is getting attention.</comment></comment></comment>


ESP8266 gets its game on with open source engine - <AUTHOR> https://hackaday.com/2019/03/11/esp8266-gets-its-game-on-with-open-source-engine/ <comment><USER2> One thing it took me a huge while to understand is that all the old portable consoles could exist thanks to specialized hardware for graphics rendering in particular

I think a lot of these projects don't use that kind of thing, which makes me wonder if there's a market/space in the community for a hardware graphics driver off the cheapest FGPA possible that could drive a TFT and enable flappy bird at a bit more than 20FPS

<comment><USER3> I reckon it's only a matter of time until someone uses the ESP8266 to synthesise a TV signal, whether that be at baseband or transmitted using the integrated radio.

In fact a quick search shows that it is already in progress.

[https://hackaday.com/2016/01/31/tv-transmitter-uses- esp8266/](https://hackaday.com/2016/01/31/tv-transmitter-uses-esp8266/)

[https://hackaday.com/2016/03/01/color-tv-broadcasts-are- esp8...](https://hackaday.com/2016/03/01/color-tv-broadcasts-are- esp8266s-newest-trick/)

<comment><USER4> this is a composite tv signal generated directly from an esp32

[https://www.youtube.com/watch?v=5t1_XNc3vNw](https://www.youtube.com/watch?v=5t1_XNc3vNw)

And a VGA signal generated from an esp32 with a few resistors.

[https://www.youtube.com/watch?v=G70CZLPjsXU](https://www.youtube.com/watch?v=G70CZLPjsXU)

</comment></comment></comment><comment><USER5> Sadly ESP8266 may become banned in EU [https://www.theregister.co.uk/2019/03/11/eu_directive_ban_rf...](https://www.theregister.co.uk/2019/03/11/eu_directive_ban_rf_radio_firmware_tinkering)

<comment><USER6> I see no reason why this would happen. By this reasoning, you can also ban laptops and smartphones.

</comment></comment><comment><USER7> Damn, flappy bird and don't even need an esp32..</comment>


Highlights of Verizon 2018 Data Breach Investigations Report - <AUTHOR> https://www.templarbit.com/blog/2018/04/11/highlights-of-the-verizon-2018-data-breach-investigations-report <comment><USER2> Verizon released the 11th edition of their report yesterday and I took a quick look at it this morning and started compiling interesting highlights into this post.

Hope this will be of value to some of you. Particularly to people that don't want to spend time reading the entire PDF report.

</comment><comment><USER3> There is also this companion site: [http://www.verizonenterprise.com/verizon- insights-lab/dbir/t...](http://www.verizonenterprise.com/verizon-insights- lab/dbir/tool/)

<comment><USER2> Thank you for sharing this, haven't seen this before. Pretty interesting.

</comment></comment><comment><USER4> The report looks very interesting, but for percentages to be meaningful we need to know that the data is a representative sample of actual breaches. Is it?

<comment><USER2> The percentages in this report are in relationship with the data points of 53,000 incidents and 2,216 confirmed data breaches that the team analyzed.

<comment><USER4> Yes, I saw and I should have included that in my comment. But I have no idea how many incidents and data breaches exist in reality. Is that a random selection? All incidents/breaches reported someplace? Are they all Fortune 500 company breaches?

What does this sample represent?

<comment><USER2> Ah, yes I see what you mean. You got an excellent point here. It's not just fortune 500 companies, because one of the data points highlights that among the victims the SMB sector has the highest allocation. My guess is that the analysts try to get data from as many breaches as possible every year. Probably partnering with incident response firms like Mandiant. It's not a sample set and at the same time it is because a lot of breaches go undetected.

<comment><USER5> I'd recommend taking a look at the Appendix E: Methodology. It's a little long at three pages, but hopefully answers your questions. If not, hit up the email address or twitter account on page 47 and we'll answer them.

Gabe Co-Author

<comment><USER2> Gabe, thanks for that. Just checked the Appendix E section you mentioned, instantly a fan of what I saw there. Glad you have filters in place rather than just taking any breach report into the data set.</comment></comment></comment></comment></comment></comment>


1500 Archers on a 28.8: Network Programming in Age of Empires and Beyond - <AUTHOR> http://www.gamasutra.com/view/feature/3094/1500_archers_on_a_288_network_.php/

<comment><USER2> One neat hack I read about, I think from a later product from these same developers:

If your network protocol is only exchanging input, then the bandwidth demands are tiny. At some point they realized that they could just double up packets: repeating the last inputs in the next packet. If a packet got dropped, the copy would be already transmitted before any sort of ack timeout or sequence jump would even detect the loss.</comment>


Regional Security Office Ghana Shuts Down Fake US Embassy - <AUTHOR> http://www.state.gov/m/ds/rls/263916.htm <comment><USER2> This just in from the the State Department, Washington, DC.

"Successful interagency operations like this are an essential part of investigating and stopping the well-connected criminal networks perpetrating passport and visa fraud."

Nice to find out about such highly successful anti-corruption efforts where it only took 10 years to disable a vast conspiracy of "several suspects" who were arrested after nefariously deploying a massive network of high-tech equipment "that included a laptop computer; cell smart phones; 150 passports from 10 countries" and more, plus "an industrial sewing machine".

Very few law-enforcement agencies ever manage to apprehend any sewing machines at all.

Overcoming such a huge criminal enterprise certainly would not have been possible without every one of these powerful international investigative agencies on-the-job around-the-clock.

Fortunately only "Several suspects remain at large" and "this is only the beginning."

Excellent, in about 10 more years we should expect another criminal's laptop to be brought down.

<comment><USER3> I don't know what you expect. That the U.S. is going to police every nook and cranny of every country when there is rampant local corruption.

</comment></comment><comment><USER4> When I was traveling across Africa, I was told that thieves love the steal passports from US and UK Citizens since it was possible to be black and a citizen of those countries once the passport is doctored with a new photo. Much harder to pull off a photo of a black person with a German passport and German name. These passports were sold via operations like the one mentioned in the article.

The saddest part of the article is the local officials were bribed for a decade. Ten years.

<comment><USER5> I handed my wallet and (U.S.) passport to a guy in Ghana with an automatic rifle jammed in my neck. He took the cash and threw the passport on the ground, hah.

<comment><USER6> If you don't mind me asking, where in Ghana were you?

<comment><USER5> Somewhere maybe 40km south of Tamale towards Kintampo. We were on a bus headed south on the main road (Google Maps calls it N10).

<comment><USER7> I'm sure this information is quite verifiable on google and all..(just google from Tamale to Kintampo and bingo!!) but you're saying that an armed robber in Ghana points a gun at you, takes your cash and leaves your visa on the floor. Walks away.

<comment><USER5> Yep! Here is a slightly edited account of my memory of what happened (this was written a few weeks later):

\---

I'm recreating this trip from an unimpressive map of Ghana and with little knowledge of the exact route we took, but I believe we were about 40km out of Tamale, near the small village of Kusawgu, when two men dressed in jungle fatigues appeared from the bush on the right side of the road and fired a few rounds from automatic weapons. I can't recall where exactly they were aiming but I do feel like the guns were pointed pretty directly at the front of the bus. The driver yelled "Oh shit!" or something similar in French as he sank back into his seat and pulled the bus out of gear. From somewhere behind me I heard a woman yell "Il faut continuer!" ("Keep going!") as the driver slowed and turned the bus to the shoulder of the road. As we slowed down a small tro- tro (taxi van) sped up quickly and managed to use our bus as sort of a shield to get by the gunmen (who did take a few shots in vain at the little bugger).

There were a few more shots and a loud noise outside the bus as one of the gunmen shot out the front right tire. He then came on the bus and tossed the bus worker who was sitting in front of the door out of the bus. The driver was yelling at us to get off and apparently this made the gunmen a little angry so he smacked him over the head a few times (nothing serious). For my part, I put my head down and had no intention of moving until someone with a gun told me too. Next, the gunmen who got on the bus turned to face the passengers, said something incomprehensible and fired a round inside the bus. The gunmen was standing right next to me so the shot gave my left ear quite a ringing and we later saw where the bullet landed, just over the seats where two people from our group were sitting. He then grabbed my shoulder and heaved me a little towards the door, which I took to mean that he wanted me to get off the bus.

When I got outside I saw the bus worker lying face down on the ground with his arms and legs spread. I felt this position looked a little awkward so for a moment I just kind of stood there. Then another volunteer from our group came out and got down on his knees and covered his head next to me so I followed his cue. A small aside here, as part of our safety and security training with Peace Corps we have been well informed of the general anatomy of a situation like this and something similar did in fact happen to a volunteer in Burkina a few months ago. Basically these men are highway robbers looking for money, they are not out to hurt anyone and the general rules for the persons being robbed are to do as they say and do not look them in the face.

Anyway, not long after I got off the bus I felt hands reach in to my back pockets to search for money (none was there). From here on out I can only really guess at what was happening because all I could see was the ground under me and a few people nearby. After a few minutes some more hands made their way in to my back pockets and once again came away empty. Finally, someone came around in front of me and lifted me up a little while something else poked me in the back of the neck (I assume a gun); I kept my eyes on the ground, took my wallet and passport from the front pocket of my shirt, handed it to him and went back into my covered position. He immediately threw the passport back down on the ground, took a few seconds to pull the cash out of my wallet (150,000cfa, about US$350) and then tossed the wallet with all its contents back at my hands. I was immediately rather relieved that he did not take my ID or passport as it saved me the trouble of replacing them.

Throughout this process there was some celebratory hooting and hollering (understandably, dudes were making bank with all of us nassara (foreigners)) and a few random gun shots here and there. At some point there were maybe 15 or 30 seconds of frenzied gun fire that were followed by single shots at close, seemingly equal intervals. I became a little worried thinking that maybe they were executing people, but I took the lack of any sort of other noise (screaming, body thud, etc) to indicate that this was not the case. I noticed the bus worker beside me start to sit up and look around a little and eventually turn on his back and sit down. I took this to mean the coast was clear so I slowly came up to look around and saw a Ghanaian police officer firing rounds in to the bush. I was quite relieved (and surprised) to see him there, I don't think the whole ordeal lasted more than 10 minutes and that strikes me as a pretty good response time for the police. Taking the example of the volunteer that this happened to in Burkina, I believe he was held up for over half an hour (or more) and I don't think the police came at all. [HN edit - I later spoke with this volunteer about his experience, he was in fact held up for a couple of hours and police never did come. In his case they took pretty much everything he had (he didn't have his passport at the time).]

Once everyone realized that the immediate danger was over people began looking around for their belongings while the police tried to get an idea of what happened and what was taken. At one point in this process an officer asked me how much was taken from me; after I told him, he added it to his list and remarked, and I quote, "Wow, they had a field day." I found this pretty damn amusing. Anyway the first thing I found was my favorite dress shirt on the ground just outside the bus. I collected that and got back on the bus to look for my bag but found nothing near my seat. I then went back outside and found another small item of clothing (I think shorts) before I noticed my bag (the thermal bag that I love so dearly) crushed up against the windshield and empty. I was happy to find my bag but pretty bummed to think that everything inside had been taken (clothes, camera, ipod). To my surprise, however, I eventually found pretty much everything strewn about randomly in the first few rows of seats. Apparently the robbers were either completely uninterested in anything other than cash or simply didn't have the time to get everything they wanted. Some other peoples' bags remained untouched and for the most part everyone in our group still had some money (I was the only idiot who didn't separate my money out in different places).

Within (impressively) five or 10 minutes there was an empty bus ready to take us all to the next large city on our trip south, Kintampo, while the driver and worker changed the shot-out tire on our bus. We got in to Kintampo pretty late in the evening so Peace Corps asked that we get a hotel there before continuing to the much larger city Kumasi (which has a Peace Corps "sub office"). We got rooms in a nice little hotel overlooking the bus station and this was where we got our first taste of the delicious "fried rice" dish that is a staple in Ghana. The dish includes, obviously, fried rice plus a little salad, a piece of fried chicken, some baked beans (!!) and occasionally a hard boiled egg. Needless to say we were all relieved to relax and have some good food after such a long day.

\---

<comment><USER8> As a Ghanaian, this is a pretty odd story for multiple reasons.

<comment><USER5> I don't find that surprising by any means. It's out of context and a near stream of consciousness memory rant of the only time in my life anyone has ever pointed a gun at me (:

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Startup trying to disrupt protected market; gets hit hard by authorities.

<comment><USER10> Like uber, they we're able to use a legal shell game to dance around the DS and Ghanaian plods. Their operations continue elsewhere.

<comment><USER11> > bought enough time for corrupt officials to arrange for bail for members

Sounds like an employer that looks after it's employees!

</comment></comment></comment><comment><USER12> As a Turk I always knew that our criminals were good at creating fake stuff. But faking an EMBASSY for TEN YEARS? This is something beyond being good at something.

<comment><USER13> I find this article really discriminating towards Dutch people. Only people born in Holland can speak perfect English and Dutch so this was definitely a Dutch guy, maybe with Turkish passport because you cannot escape the Turkish government even after generations of living in another country when their grandfathers came to work in a factory, but nonetheless as Dutch as apple pie _.

I have no idea why you Turks need to claim the fame while these guys clearly learned all the tricks from us. It's time you start respecting us.

_ you should try ours. It's better than yours.

<comment><USER13> My god. It's a joke. Relax.

</comment></comment></comment><comment><USER14> When I saw that pic of that fake embassy I wondered how could a embassy look that shoddy. Then I thought maybe not all countries have posh and clean looking embassies. Then I see the pic of the real embassy on that page and it looks similar to what I have seen of most embassies - clean and elegant looks.

To be able to run this fake embassy in that shoddy building for a decade does take real something.

<comment><USER15> UK has outsourced all visa application and interview work to a company named FRS, whose offices, offices for visa and application, representing the country, can be described no more than shoddy and downright a disgrace for the UK.

*Context: Was in one of their offices 2 weeks ago and embarrassed this was how my country was representing itself.

<comment><USER16> Indeed. This[1] is where I had to go for part of the UK immigration process. If I hadn't linked there from a gov.uk website I wouldn't have believed I was at the right place.

[1]: [http://i.imgur.com/ns3560x.jpg](http://i.imgur.com/ns3560x.jpg)

<comment><USER15> Thanks. Wow. That's really bad.

</comment></comment></comment></comment><comment><USER7> Flag and all, i wouldn't call it a "Fake US Embassy". With the high rate of Visa denials in countries like Nigeria,(and some other francophone West African countries) Ghana is a go to haven for all your visa issues. I'm quite sure most of these "victims" knew the kind of documentation they were going to get, just as long as it gets you through immigration. Scam might not be the word here, more like illegal travel facilitation.

</comment><comment><USER17> Ballsy.

I can't help but have some level of grudging admiration for scammers so brazen.

<comment><USER18> A decade of operation...that takes dedication.

<comment><USER19> Don't get too impressed with scammers, they evidently maintained pretty chill hours:

"Monday, Tuesday, and Friday, 7:30 a.m.-12:00 p.m"

<comment><USER20> Roughly comparable to a real US Embassy:

American Citizen Services, Telephone: (03) 9526-5900 Monday to Thursday only 9:00am – 12:00noon

[https://au.usembassy.gov/embassy-consulates/melbourne/u-s- ci...](https://au.usembassy.gov/embassy-consulates/melbourne/u-s-citizenship- services/)

</comment></comment></comment></comment><comment><USER21> Next they will doctor a fake "US Country" and then they will issue visas for it :) the poor souls who have never seen the US will feel they have come to the US :) Level 2 :)

<comment><USER22> It's kind of interesting that in order to issue recognized passports you need to have military control over some land somewhere. Why isn't it possible to vet people as citizens without that?

<comment><USER23> Several international organizations (the EU, UN, and Interpol) issue travel documents which can be recognized like passports even though they don't have military control over any territory.

<comment><USER20> People from American Samoa are US nationals but not US Citizens, and get a different US Passport[1]. Apparently the ILO issues travel documents, too although it is unclear how widely they are recognized[2]

[1] [https://en.wikipedia.org/wiki/Travel_document#American_Samoa](https://en.wikipedia.org/wiki/Travel_document#American_Samoa)

[2] [https://en.wikipedia.org/wiki/Travel_document#UN_travel_docu...](https://en.wikipedia.org/wiki/Travel_document#UN_travel_documents), [http://www.icao.int/Meetings/TAG-MRTD/Documents/Tag- Mrtd-20/...](http://www.icao.int/Meetings/TAG-MRTD/Documents/Tag- Mrtd-20/TagMrtd-20_WP015_en.pdf)

</comment></comment></comment></comment><comment><USER24> Scammers acting as if they were the IRS, scammers acting if they were the US Foreign Service...as much as people don't like the slogan of "Buy American" we surely have a world of scammers who think that is worth something.

</comment><comment><USER25> The blockbuster hollywood movie watching kid and sad drone stat reading adult in me is wondering why all these people were not just killed years ago. Seems pretty serious to just be able to produce visas and fake/doctored passports.

<comment><USER26> I'd imagine the documents aren't worth anything since they don't correspond to any database entry. Just a way to scam people for fees.

<comment><USER27> It's not as though every border crossing in every country has instantaneous access to international passport registries. There are many, many places in the world where your docs only need to _seem_ authentic to be useful.

<comment><USER28> They could also be useful as a privilege escalation on-ramp. Get these fakes, use them to gain genuinely issued, but lower status credentials (Bank account? SSN maybe?), then use that as leverage to go further up the chain.

</comment></comment></comment></comment><comment><USER29> I wonder how far you can go with these fake documents. I imagine the internet makes it a bit harder

<comment><USER30> They might not get you into the US but they might be adequate to get you into a third country or be useful to validate a legal contract or something like that.</comment></comment>


For all the "open" talk, Android Market sure has a lot of rules - <AUTHOR> http://venturebeat.com/2009/02/17/for-all-the-open-talk-android-market-sure-has-a-lot-of-rules/ <comment><USER2> The thing with Android is, since you don't need the market to install apps, even if the rules were stupid it wouldn't be as big a deal as it was with iPhone. It's the difference between being effectively censored and just being shut out by one retailer.

But it's a moot point since most of those rules make sense.</comment>


Show HN: Blackjack Probabilities - <AUTHOR> http://www.chriszieba.com/2015/03/30/blackjack-probabilities

<comment><AUTHOR> A small weekend project. I love playing blackjack and have basic strategy memorized, but I've always been curious to see what the actual probabilities were for hitting, standing and doubling down. If you'd like to see the code it's available on github: [https://github.com/ChrisZieba/blackjack](https://github.com/ChrisZieba/blackjack).

</comment><comment><USER2> Some years ago (before I gave up gambling entirely) I noted that there was one UK online casino which not only offered a reasonable game of blackjack, but would also let you "auto play" as many hands as you wanted, using basic strategy. (i.e. to automatically play what is statistically the optimum response to any given hand.) I never saw that feature offered anywhere else, presumably because players playing imperfect games means more take for the house - but even so, a thousand perfect hands of basic stategy will almost always still leave the house having had the better side of the deal, purely due to the house edge that's built into the game.

(What caused me to give up was an extremely expensive blackjack hand that started with betting $HOUSE_MAX on a hand, and getting a pair of aces. The best move is to split aces, resulting in two hands, at double the bet. And in this case, both those hands were then facing a dealer hand where basic strategy demands that you double down - so an already significant bet ended up being doubled, then doubled again. It was absolutely the right move, statistically, but didn't go my way in the end, and although I still walked away in profit, that hand is what made me think that Blackjack was something that could one day cause me a real problem if I didn't find something better to do with my time.)

<comment><USER3> When I play blackjack it's for a basic bet of $10 or $20. That way even after a few splits and double downs I'm not "betting the house". Couldn't you find a way to still enjoy gambling w/o betting thousands of dollars on a hand?

So I guess it depends on how much $HOUSE_MAX was. Around here the Indian casinos are atwitter at $100 bets. In Vegas I could be playing with a bunch of $10 players and nobody bats an eye if someone walks by and, in the middle of a deck, bets $1000 on a single hand, and then goes on his way.

</comment></comment><comment><USER4> Awesome! I'm actually about to begin work on creating a machine-learning blackjack-playing agent for a CS class project.

Great documentation as well. I'll definitely be referencing this.

<comment><USER5> Why? There are very efficient machine-learning-free solutions... There are even rote solutions a human can use n his own head with a bit of practice. The game is basically solved.

[https://possiblywrong.wordpress.com/?s=blackjack](https://possiblywrong.wordpress.com/?s=blackjack)

</comment></comment><comment><USER6> Awesome work! It does the calculations based on what is currently in the shoe, correct? So it should be possible to give it a custom shoe with cards removed to find the best probability for a card counter.

<comment><AUTHOR> Thank! Yes the calculations are based on what is currently in the shoe. Setting the shoe is an easy task.</comment></comment>


Ask HN: What are your views our Net Neutrality? - <AUTHOR>

I am from India. And currently we Indian Citizens are protesting against Anti Net Neutrality practices followed by our telcos and for a Net Neutrality law.
I want to know what are your views about Net Neutrality?
What do you think about internet.org or airtel zero plan? Do you think they break the Net Neutrality law?
If you are from US please share how exactly Citizens of US forced government to pass Net Neutrality law.
Currently Indian Citizen on Social Media are protesting against Airtel Zero[1], Internet.org (Facebook) [2] and are mailing TRAI (Telecom Regulatory Authority of India) to pass a Net Neutrality Law.
The current problem in India is we all are protesting individually. I want to know how citizens of US got united for the single mission.
[1] - http://timesofindia.indiatimes.com/tech/tech-news/Net-Neutrality-Airtel-Zero-is-threat-to-Digital-India-plan/articleshow/46861561.cms
[2] - http://tech.firstpost.com/news-analysis/zuckerbergs-internet-org-is-unfair-facebook-founders-pet-project-faces-ire-from-airtel-vodafone-257673.html <comment><USER2> Here in the US, many larger businesses created large campaigns and gathered support..

Some of those businesses was Mozilla [https://sendto.mozilla.org/page/s/protect-net- neutrality](https://sendto.mozilla.org/page/s/protect-net-neutrality)</comment>


Is Boston Still a Venture Capital Hotbed? - <AUTHOR> http://bits.blogs.nytimes.com/2009/05/19/is-boston-still-a-venture-capital-hotbed/

<comment><USER2> This is big news. VC funds rarely do this sort of thing. And Greylock is arguably the most prestigious fund in Boston.

<http://ycombinator.com/topvcs.html>

Now 9 of the top 10 funds in our poll are headquartered in the Valley. The only exception is First Round, which is in Philadelphia (and whose lead partner called his blog "Redeye VC").

<comment><USER3> See what happens when you leave?</comment></comment>


Ask HN: Why are companies seemingly always reporting incorrect breach numbers - <AUTHOR> I am starting to become skeptical when a company first releases breach numbers. We have seen now on numerous occasions Equifax, Wells Fargo and now Yahoo revise their numbers upwards. My question is: is this because the company is generally giving a good faith estimate before getting the actual number, or is this an attempt by the companies to publicly minimize the extent of the hack and then revising later. <comment><USER2> It could also be that the people responsible for reporting the numbers (PR, communications) are not the same people responsible for investigating the breach (IT, engineering).</comment>


Worst-case global warming scenarios not credible, says study - <AUTHOR> https://www.theguardian.com/science/2018/jan/18/worst-case-global-warming-scenarios-not-credible-says-study <comment><USER2> And neither are the best-case ones:

 _"Our study all but rules out very low and very high climate sensitivities," said lead author Peter Cox, a professor at the University of Exeter."_

So, basically, they argue that we can make the error bars smaller, from "1.5C to 4.5C" to "2.2C to 3.4C"

"Best-case global warming scenarios not credible, says study" is another way to spin this.

</comment><comment><USER3> It will not be long before we learn the worst scenarios are actually too optimistic.</comment>


Harmonograph - <AUTHOR> https://en.wikipedia.org/wiki/Harmonograph <comment><AUTHOR> Also, simple instructions on how to make one:

[http://www.karlsims.com/harmonograph/](http://www.karlsims.com/harmonograph/)</comment>


Ask HN: Has someone used Ruby/Python for Android/iOS development? - kung-fu-master

<comment><AUTHOR> I quite liked the look of RubyMotion <http://www.rubymotion.com/developer- center/> for iOs development (as I fancied using Ruby) but I cant say I have tried it - sorry.

</comment><comment><USER2> Wasn't Instagram written in Python?

<comment><USER3> At Instagram, the backend, API and web applications are built using Python/Django but not mobile applications. They are made with native ios/android technologies.

<comment><USER2> Ah, thought so.

</comment></comment></comment><comment><USER4> I was really hopeful of kivy [<http://kivy.org/>], but after playing around with it a little bit, it seemed very foreign to me, even though I program in Python daily. It seems very un-Pythonic, for lack of a better term.

On top of that, it seems to focus more on 3D than 2D, which is probably why there's so much there I'm less familiar with, but I mostly just want a decent 2D interface in Python.

I've had the best luck out of things like AppCelerator and Phonegap, but I've never been thrilled with the performance of either.</comment>


How much risk have you taken? - <AUTHOR>

A bachelor friend of mine, who comes from affluent background left his job at Microsoft and joined another established start-up(which was about to get acquired) and his facebook wall reads "It was a very tough decision".
I thought "Really"?
Entrepreneurs take much bigger risks when they leave their full time corporate job to chase start-up dream and plunges into unknown with the hope that he would be able to raise money in next 3 months and everyone would be fine, including wife and kids (who would no longer have best medical coverage) and are not going for vaccation this year..and not sure when they would next. Maybe they would have to leave the country if nothing works out...
Whats your story? Want to share how much risk have you taken and what was the lowest point from which you came back? <comment><USER2> I served around Northern Iraqi region as a infantry squad leader. Our primary mission was looking for road side bombs and securing routes for military convoys. Other squads had some casualties due to ambushes or IEDs. I survived, as all my men.

By the way this was obligatory service, we didn't ask for it.

<comment><USER3> The risk you took makes everything else seem very mundane in comparison.

</comment></comment><comment><USER4> Hello,

18 months back I quit the job second time to take a shot again at entrepreneurship.

I failed fist time 4 years back.

In my last organisation I was leading a national team of more than 400 persons. Almost got my promotion letter (If I hadn't quit for 2 more weeks).

Have almost lost my immediate family due to this decision of mine.

18 months and I have still not given up.

<comment><USER5> Its a bitch. :) Hang in there.

</comment></comment><comment><USER6> I went to college for CS, but quickly switched to biology. I worked in a neuroscience lab for three years as an undergrad and was a co-author on a Human Molecular Genetics paper.

Post-graduation, I worked at MIT in another neuroscience lab for 1.5 years. I'm co-author on another paper which is going out for review soon.

Despite my nearly six years in research, I've decided getting a PhD in biology is a fool's game - I'm quitting in two weeks to become a freelance developer. I've squirreled away $7k in savings (~20% of my yearly salary) which should give me about a 6-8 month runway to get this freelance thing off the ground.

Doesn't seem that risky to me, but everyone thinks I'm goddamned crazy for doing it.

<comment><USER5> $7K is not much. You'll find it burns up way faster than you think. I would definitely save up more before going fulltime. Get another higher paying job. Eg: tutoring kids. You can make a lot of money that way. $100 per hour easily.

(I'm now an entrepreneur after quitting my job 6 months ago.)

<comment><USER6> Tutoring is a good idea, thanks for the tip. I live in Boston, so there is bound to be plenty of parents or college kids around needing tutoring.

Worst comes to worst, I'm prepared to work at a coffee shop or some other part time job as well. Just need to get out of my current soul-crushing position! :)

<comment><USER5> I know the feeling but it's not the smartest idea - unfortunate as it sounds. Look at your present job as funding for your future life. Do everything you can to get your next life going without losing the money from your present job.

If you dislike your present job then more the reason that you optimize fir your next job and let your boss worry when to stop your "funding". :) ... Seriously look at your present job as funding for as long as you can.

<comment><USER6> I've been doing that, to some degree, for the last six months. When I decided I needed to get out, I started diverting as much money as possible to savings (~30% of my monthly, basically everything that isn't food/rent/utilities).

The real problem with my current job is that it's both time intensive (50-60 hours/week) and pays next to nothing ($32k pre-tax, living in Boston). I should probably be working in the evenings to save more money, but I'm trying to work on my coding skills so I can actually make the transition.

The job originally made perfect sense if I wanted to stay in academic biology, since I would now have a killer recommendation from MIT. Hell, the salary is better than grad students! But since I want to change careers, it is a complete dead end that I need to get out of.

<comment><USER5> Your doing the right thing. LEarning to code. But I would try to get two or three projects and at least 1 paid project under your belt before you quit.

Once you dont have money coming in on a regular basis you have to deal with all the psychology that goes with it. Its hard - really hard.

Also cut back to 40 hours a week in your day job ... I mean you dont care right? Use that time to start doing coding work. But get to paid work first and get bunch of clients.

If you cant then I would say at the very least go stay with your parents or anyone who would have you. $7K is really not enough.

I stuck it out 1 year extra when I hated my position. And I'm very very happy I did that.

</comment></comment></comment></comment></comment></comment><comment><USER7> With a CS degree and a bunch of work I could show off, I don't really consider anything I do a risk. Even if I completely utterly fail at growing my own business, I'm still better off than so many who could be fired at any time and have a much tougher job search than I expect. My mother's sending out resumes every day and never hearing back while recruiters are calling me, and any other competent developer with a resume on the net, all the time.

</comment><comment><USER8> I borrowed many dozens of thousands in student loans. I did not graduate, and on top of that, let my skills deteriorate.

The come back is something of a work in progress. I think it's in that "getting worse before it gets better" phase of the film. I hope.

I share not because it's an insane story, but because I'd love to hear others' answers.

<comment><USER4> may be you can share sometime. Keep the faith, I am also struggling to keep my faith at present.

</comment></comment><comment><USER9> I work at home doing freelance work full time for the last 5 years. Everyday is a risk as I don't have a stable income. I have a family to feed too. I guess am an optimist that's why I can live like this.

The good news is that I am able to build my own side-project which I hope will gain traction in the near future.</comment>


Tell HN: Comments and submissions with replies can no longer be deleted - <AUTHOR> Even within the 2 hour window.
EDIT: Applies to submissions too.
This appears to be a new undocumented behavior, likely intended to reduce the occurrences of the [deleted] that has broken discussion threads of old.
The problem is that there is nothing preventing users from just editing the comment to nothing, which achieves the same effect, so the addition of the lack-of-functionality makes no sense. <comment><USER2> Yes, we did this because too many people were abusing deletion and it was gutting the threads.

It's true that you can still edit the comment text to nonsense or nothing (as long as you're within the edit window of 2 hours, which hasn't changed). I don't see any way short of strong AI to prevent that, nor should we want to. But this isn't the "same effect". It leaves the shell of the comment intact, including username and time posted, which is a lot more context than there was in the past—metadata, anyone?—and so the threads are less gutted. And, some, hopefully many, users will simply edit their comment to remove what was bad about it.

Edit: I forgot to mention that people are always welcome to email email@example.com and ask us to delete specific comments if they're worried about them. We do that all the time, e.g. for people who regret including personal details in an HN comment.

<comment><AUTHOR> Hi Dan, thanks for the followup. I'm more concerned about _wrong_ comments than bad comments though, since usually the delete-blocking-reply points out the wrongness and warrants the full delete to avoid massive downvotes.

I'll see how it plays out, though.

<comment><USER2> It's true that the comment that can no longer be deleted is still subject to downvoting. If that turns out to be a problem, there are things we can do to fix it, so do let us know if you see signs of that.

</comment></comment></comment><comment><USER3> I don't think most people delete posts because they are low-value. I believe most people delete posts when they realize they don't want their name to be associated with them.

Short of comments with sensitive and/or personal information in their content, I do see value in preventing comment deletion. That is, assuming that you can disassociate your name from it.

I embrace edits, but I do think it's important to allow full access to edit history.

<comment><USER4> Good idea, deleting the username part of comments.

</comment></comment><comment><USER5> >Comments with replies can no longer be deleted.

Good.

>The problem is that there is nothing preventing users from just editing the comment to nothing, which achieves the same effect

HN doesn't revalidate comments after they've been edited? If so, that would have been a problem either way. Limiting the number of edits (to maybe 2) and keeping a public log of each edit would prevent this - as would, obviously, not allowing empty comments.

<comment><AUTHOR> Not "empty" in the literal sense, but no information (e.g "EDIT: nm")

<comment><USER5> Fair enough - I guess that is technically valid.

I don't know whether disallowing edits after a post has replies as well would be the easiest way to fix that - you would have to handle the edge case where a comment gets its first reply before an edit is made. Maybe have comments start out as drafts, and only allow edits before they're published?

An edit log might work too but what do you do when an edit changes the entire context of the thread that follows it? If you allow edits in a comment with replies, you could treat each edit and its current comments as a separate unit, so that each edit results in a new thread (a bit like separate branches in a git repo) but that would probably be a serious pain to navigate.

<comment><USER2> It's important to let people save face when they say something they regret. We're moving the window a little toward accountability here (the fact that an account said _something_ that got a reply is now immutable), but only a little. Public edit logs would be going much too far, I think.

</comment></comment></comment></comment><comment><USER6> Does it work if you reply to yourself?

Edit: it will not allow you to delete a comment with any replies, even your own, but if you delete your reply, you can delete its parent.

</comment><comment><USER7> I always thought that people deleted their own comments to staunch the downward flow of their fake internet points. Was that an incorrect assumption?</comment>


Julian Assange shows psychological torture symptoms, says UN expert - <AUTHOR> https://www.theguardian.com/media/2019/may/31/julian-assange-shows-psychological-torture-symptoms-says-un-expert <comment><USER2> There's a minimal discussion over here: [https://news.ycombinator.com/item?id=20059674](https://news.ycombinator.com/item?id=20059674)

However, that submission goes to a link redirect rather than to the original article, as this one does. That's rather poor form, and against the guidelines. I hope the discussion ends up here.</comment>


China sends first 'unhackable' message to satellite - chaos-generator https://www.ft.com/content/a6d635f8-7da2-11e7-9108-edda0bcbc928 <comment><AUTHOR> Non-Paywalled version: [http://www.popsci.com/china-launches-quantum- satellite-in-se...](http://www.popsci.com/china-launches-quantum-satellite-in- search-for-unhackable-communications).

"Importantly, though, quantum communications can be compromised by vulnerabilities in physical equipment or personnel or when other forms of communication link into the process." \- It is just a matter of time before one of this happens.</comment>


The Pirate Bay goes down after legal pressure - <AUTHOR> http://torrentfreak.com/the-pirate-bay-goes-down-following-legal-pressure-100517/

<comment><USER2> 'goes down' in the title kind of makes it sound like the site is down for good, which isn't the case.

</comment><comment><USER3> _The Pirate Bay is suffering some temporary downtime as their bandwidth provider has stopped passing through traffic. A week ago, Hollywood got an injunction to effectively shut down the Pirate Bay by threatening its provider with huge fines. The Pirate Bay team is currently working on a solution._

They'll be back.

</comment><comment><USER4> They'll be back. We've been here before. Also, it's their provider that shut them down, the pirate bay has little to do with that.

Weren't they their own provider?

Meanwhile if you are looking for the torrent of some linux distro, there is always <http://torrindex.com/>

</comment><comment><USER5> What's the real purpose of shutting sites like TPB down? People won't rush to stores to get the movies they want to see if they can't download them.

<comment><USER6> Funny thing is I would actually prefer downloading from official (maybe more legal) sources if I would find way to do that in my country, with my favorite OS, without stupid DRM restrictions and warnings and maybe for sane prices. But living in Germany and using Linux - such a movie-download service does to my knowledge in 2010 still not exist and is also not in sight.

Something like eDonkey but at the cost of lets say 1€ per GB and I would be happy. Then a DVD would be same price like cheap DVD's in a shop and I can decide to go with lower-quality if I don't want to spend as much.

I don't even know why producers don't just do that. Or maybe they do in other countries?

<comment><USER7> > _Funny thing is I would actually prefer downloading from official (maybe > more legal) sources if I would find way to do that in my country_

You're not the only one.

[http://www.news.com.au/technology/download- culture/internet-...](http://www.news.com.au/technology/download- culture/internet-pirates-say-theyd-pay-for-legal-downloads/story- fn58oolp-1225863187697)

Title is "Most pirates say they'd pay for legal downloads"

</comment></comment></comment><comment><USER8> Good strategy. People aren't going to care about the politics of file sharing until they can't get what they want for free anymore. Taking the Pirate Bay down is the first step towards organized dissent that removes the laws that the media companies are relying on in the first place.

Also, an injunction without oral arguments? That will last, oh, maybe a few hours...

<comment><USER9> It's not a strategy; they didn't shut down voluntarily and it's only for a few hours.

<comment><USER8> I was using the word "good" sarcastically and was applying it to the media companies' strategy.

</comment></comment></comment><comment><USER10> I always see sites that decide either they allow everything or they shut down. Why is obfuscation never an option?

What if you had separate sites dedicated to each of the following steps:

1\. Start a bt site, advertised as a site for baking recipes. Seed the site with tons of existing videos on baking, to increase legitimacy.

2\. Create a translator site for each baking-related keyword. For example, "muffins" = "Lost".

3\. Write a browser plug-in that translates the baking site into the real torrent site.

Who would one sue then? Would it not work simply because the __AA would constantly request torrents to be taken down?

I know TPB has a political agenda, so they might not want to do this.. but sites like mininova could have.

<comment><USER11> It wouldn't work because the first site would still be facilitating copyright infringement, and thus still subject to legal pressure. Calling it by a code- name doesn't remove its copyright, nor does hiding it amongst legally redistributable torrents.

Simply put, you'd sue everyone involved in the creation of that infrastructure. The second site and the guy who wrote the browser plugin may be able to escape unscathed, but the first site would be in exactly the same predicament as The Pirate Bay, Mininova, etc., except with the added bonus of trying to hide what they were doing. That wouldn't go over well in court.

</comment></comment><comment><USER12> latest from www.twitter.com/tpb [http://newteevee.com/2010/05/17/the-pirate- bay-forced-offlin...](http://newteevee.com/2010/05/17/the-pirate-bay-forced- offline-trading-continues/)

There are many torrent spiders/indexers that host torrents from many websites. e.g. <http://www.torrentz.com/> and nearly all torrents use DHT and multiple trackers. Taking 1 site down temporarily doesn't affect anything.

</comment><comment><USER13> Torrentfreak seems to be down, too. Just getting a blank page. Edit: looks like it was just my ISP.

Anyway, here's the Guardian:

[http://www.guardian.co.uk/technology/blog/2010/may/17/pirate...](http://www.guardian.co.uk/technology/blog/2010/may/17/pirate- bay-offline)

<comment><USER14> Torrentfreak is not down for me (France).

</comment></comment><comment><USER15> If I remember correctly the original TPB guys claimed that servers are out of their control now, which is why they can't take it down. But now I read there's "Managing Director Sven Olaf Kamphuis". Is there some official ownership of TPB again?

<comment><USER16> Kamphuis is the managing director of the hosting company

<comment><USER15> It makes sense now, thanks.

</comment></comment></comment><comment><USER17> They need to switch to a complete distributed architecture. Where the site, the tracker, everything is hosted by users. This way, no corporate tools can target them.

The "how" is much more complicated though.

<comment><USER18> Maybe the diaspora guys can tackle this in the fall after they've knocked out their distributed fb

<comment><USER19> In the fall? Next month. With Ruby® on® Rails®, building a Facebook clone will take mere minutes!

</comment></comment></comment><comment><USER20> Call me crazy, but I dislike piracy. Back when I was at my first startup, we found that people pirated our own software, and it stunk.

So I don't want to pirate other intellectual property.

</comment><comment><USER21> And now they are back.</comment>


Jetbrains: Developer Ecosystem Survey 2019 - <AUTHOR> https://surveys.jetbrains.com/s3/sh-developer-ecosystem-survey-2019 <comment><USER2> >iPad Pro, $250 Amazon certificate, Arduino, or a JetBrains Surprise Gift Pack

Isn't the iPad Pro like $700 retail? The valuation of your choices is something like $700, $250, $25 or $random

What an odd set of things to have a choice on

<comment><USER3> There are different number of prizes at each value, so each prize has a difference chance (higher the value, lower the chance).

You get to choose what you want, so I think it's actually a pretty interesting way to set up the rewards.

<comment><USER4> I kinda really want some jet brains Schwag. All the other stuff I could get "creative" with my test plans and expense back to my work :)</comment></comment></comment>