skysight-inc/HackerNews huggingface dataset:
Code portability is a big one. People write C compilers in a week as a hobby. Now compare to how long it took Clang to fully support all of C++. Now certainly, C++ is on every major platform in broad use. But maybe you are targeting something embedded, or a hobbyist OS. Or maybe you want to write up a quick embedded interpreter for scripting in your application. There's something intrinsically satisfying about minimalism and simplicity.

It's also really hard to control the feature-set of C++ you want. The second you start pulling in code libraries, you find yourself needing to use the parts you don't want. Not in your own code directly, but in your interactions with their library code. Catching exceptions, needing RTTI, etc.

Symbol exporting is also a really sore point in C++. The symbol names C++ compilers spit out are just terrifying. With a C language, it's trivial to write bindings for other languages like C# and Python.

But for what it's worth, I still program almost exclusively in C++.
> My person vision is lots of tiny languages that work together

I personally can't work deeply in more than about 4 languages at once. This might be my memory, my experience level, or it could be a human limit, like the short-term memory 7±2 limit.
Increase Your Productivity with Super Awesome Extensions for Gmail
If you look at the silikiddies bespoke services they are shilling customized hardware side channels. 5 Eyes Alliance already has shady engineers to do this, so I imagine all their customers are in the fields of bank fraud, insider trading and putting down rebellions in middle east Kingdoms.
It takes time. Perhaps two months to understand all the build systems properly.
http://www.ipcc.ch/publications_and_data/ar4/wg1/en/tssts-2-...

It may be worse than that... Those charts show higher levels of several greenhouse gases than has occurred in hundreds of thousands of years, not centuries.
Depends on the reader I think. I would be interested to see what he did there.

Credit card readers get scored on how hard they are to attack, and pass above some threshold based on difficulty of attack and time taken.
Sure I know about DSLs in Lisps and such, but I don't think LISP DSLs are quite on the level of SQL. If everyone creates their own DSLs I don't think it has the same impact.
You're right, but much depends on how much performance you need and how critical your realtime performance is. A lock-free algorithm may retry, but it will likely only retry once or twice. Your running time on any given operation may occasionally double or triple, but it won't hit you with six order of magnitudes like might happen with a mutex if it's contended and the thread that owns a lock takes a page fault or something.

I'd probably want to go wait-free if I was writing software for a Mars lander, but lock-free is good enough for consumer audio tasks, where mutexes generally aren't.
I've been remote for four of the past five years and only recently signed up for a co-working space in Toronto: http://projectspac.es

While I don't find any issue working from my bedroom (as far as work/life separation is concerned) but I do get stir crazy if I'm at home more than 60% of the time.

For a while I was hitting up a different coffee shop almost every day, and that's great while you're travelling, but getting a coworking space has been key to taking the next step in my career.

I hummed and hawed about the price, and decided that as long as it let me pull in a little freelance, I could afford it.

Since the summer, my rate has tripled, I'm picking up freelance each week in addition to me remote contract, and I'm much HAPPIER!

What I like is that it's a space filled with other entrepreneurs, and iron sharpens iron. I get so much motivation being around so many other people hustlin hard that I end up effortlessly putting in an extra 2-4 hours a day without realizing it!

Also great for stupidly fast internet, meeting likeminded people, and getting that social aspect back to your work. Many people at the spaces support each other's businesses as well, although so far I haven't found any clients from within that pool.
I wrote a stapler thesis and I agree with all of this.
I sort of agree but the fact that she had to build that base of people that see her posts makes me feel she should be able to post whatever she wants and as long as they engage she shouldn't be penalised. Facebook didn't hand her 70,000 likes - she had to spend a lot of time and money marketing to get that following. Are those Facebook's customers or yours?
Thank you for making me laugh! This was just priceless!

...
</head>
<neck style="gold-chain: thick;">

</neck>
<body>
...
http://stackoverflow.com/questions/764624/how-can-you-use-ja...

W3m-js is/was a thing. Also, w3m can apparently draw images inline via xterm, though I wasn't able to get this working in the ~10 minutes I tried on OSX Yosemite with X11 and xterm using the w3m from homebrew. UZBL is ok too, if you just want a minimalistic WebKit browser with vim key binds.
Yes, this here is clearly no more sophisticated than downloading some random php-file off the net and brute-forcing access to a couple of wordpress blogs. /sarcasm

To be more constructive: I don't even understand what you mean? I'd say this is more on par with implementing one's own OS kernel, than what I associate with being a "script kiddie". Sure, it's easy. Just a bit of C and assembler, and you can copy an existing design. Anyone with half a brain can do it...
From the article:

> Simple: The language of the future will have all the HolyWar features I like, and banish those that I don't. -- FillInTheBlankWeenie?

^ Only reasonable response. laugh.

There's questions all around about where domain-specific stuff is going. Regardless, I think there will be a lot more testing and program-proving.
Ha. I wasn't thinking of mixing the two. Just ... while I'm at the store picking up a stick of RAM, pick up a new magazine, or a brick of .22 ammunition.

Guns and drones are, however, an interesting subject. Wildly impractical, now, due to safety, payload, and usability issues.
Basically, the language of the future will be 90% Julia.
And there's a history page too, listing two outages for Cloud Storage:

https://status.cloud.google.com/summary
Being deaf is: constant baseline soundmaking anxiety
The thing is, there wasn't really an insightful question either. Just "Go. Discuss."

Perhaps if someone actually makes a detailed post on that subject then the post can be undownvoted. But at the moment there is no contribution, and the drive-by downvoting sorts it to the bottom, which is a good thing.
RollerBlading.com (CIS)
What
When you need to chat in Math
Here's a site that generates short poems from lovecraftian texts. Generates pretty creepy stuff at times. I submitted it as a mini project at college.

http://yushing.herokuapp.com
Why you should reject that startup job
> but I don't think LISP DSLs are quite on the level of SQL

I'm curious what you mean by this. Is your definition of a DSL based on the language's syntax, or on the language's paradigm? Clojure's core.logic [1] provides logic programming, as apposed to functional programming, but maintains the syntax of a LISP.

[1] https://github.com/clojure/core.logic/wiki/Examples
Well I was thinking of little things like Protocol Buffers, which can interoperate with many parent languages, but are so close to data they don't require deep thinking.

Edit: RE "Not same level as SQL", I meant in standardization. People can learn about SQL in isolation, too.
If you have money to spend, spend it on an instance of the console that you are interested in, then open it up and start figuring out how it works. (Google is your friend here.)

One of the biggest barriers to learning about reverse engineering is fear of the expense of breaking the system you are working on. Being afraid of breakage makes one's exploration timid. In buying a system specifically for the purpose, you've removed the major barrier.

Pulling something apart and figuring out how it works has to be the best way to learn about engineering. Every child (and curious adult) should do it, with children having the advantage of all the time in the world to do things. As you pull lots of things apart, you begin to learn about the full spectrum of current engineering techniques, eventually ending up with the knowledge to design your own stuff.

It would be cool if there was a "Wikipedia" of reverse engineering, whereby every consumer item out there has a web of articles, and an army of the curious has fun by stripping devices down and collaboratively documenting innards to the lowest level possible. It would be extra cool if the community extended to a means of obtaining broken reverse engineering targets, that would otherwise be thrown away, or a way of spreading the cost of purchasing sacrificial devices.

Such an effort would directly feed into Free Software efforts, by providing the knowledge required to rewrite replacement software, from scratch, for the devices in our lives. (For example, Free Software for your phone's modem processor, your washing machine, your fridge, your TV, ...?) Free Software for consumer appliances will come into prominence as every appliance in our lives, and their associated sensors, joins the "Internet Of Things".
It was very much an exploration project, so there isn't a single source. I used https://www.gentoo.org/proj/en/gentoo-alt/prefix/techdocs.xm... and SUA Community forum that is down now, on some of the necessary code patching.
Facebook's trying to double dip. They want you to pay to get your fans and pay again when you want to market to them. It's nothing short of a scam.

I think that this stunt will increase Facebook's profits in the short term, mainly because of businesses that have already invested in building their pages. Longer term, however, we'll definitely see a shift to direct email marketing.

Once you have someone's email, you own that relationship and there's no gatekeeper to charge you for every interaction. As business start realizing valuing of the direct relationship, Facebook will start taking a hit, and rightfully so.
Its up on iTunesU as well ...
Crazy - not only predicted the internet and the PC but nailed the commerce portion of it as well almost down to a T.
New site helps you turn online property into rental income
Type checking does not verify behavior
If the signal is received more than once it means it is more important :p

"Oh shit!"

"^C^C^C^C^C^C~C^C"
> what many consider the first PC (the Altair 8800) was out

There's a good case to be made that the first personal computer was introduced in 1971, and had actually ceased production in 1973: http://www.kenbak-1.net/

The Altair 8800 is more important as a predecessor on the main line of microcomputer development, but the basic idea of a computer a single individual human being who wasn't massively wealthy could own was actually, to some small extent, achieved a few years before anything that would evolve into the rest of the microcomputer line was in existence. (To be technical, the Kenbak-1 can't be in the microcomputer line because it wasn't a microcomputer, because its CPU was built out of discrete components as opposed to having been a microprocessor.)
Does quickcheck run at compile time for Haskell? (I've dabbled with Haskell, and I've read about Quickcheck in other languages besides Haskell. In those other languages, Quickcheck definitely does not "happen" at compile time ... does it for Haskell?)
There is an interview with Don Knuth somewhere where he talks about having to work in numerous low level languages simultaneously to write compilers for different machines in the 1960s. He added that learning MIXAL/MMIX is no big deal compared to the days when every computer had a different architecture you had to learn, sometimes with little documentation.
It has a clean, organized interface too which I like.
Aren't there C++ compilers that will compile to C code? Doesn't that effectively make C++ just as portable as C?
UK blocked piracy site list more than doubles after ruling
How trolls took down Coin Fire with a DMCA
That dream is so child-like that you should treat that person as a child.
'Off switch' for pain discovered
> The simplest test I can think of (`docker run busybox true`) takes 0.38s wall clock, pretty far out from your statement even when allowing for it stopping as well.

Good to know. The milliseconds claim is on their website, I took it for granted and never timed it. I guess they consider anything under 1 second as "milliseconds" :) But actually the stopping time could be a factor.

When the process executable path is located on a networked filesystem - cached data for that file must be thrown away by the OS once the file lock is released (which happens when the process exits). So you will actually speed up subsequent launches of the process if you delay your shutdown a little bit such that the file lock is held and thus the system cache for that file is not thrown away. They probably aren't doing this though...
> It's nothing short of a scam.

How's that supposed to work? Frankly, Facebook is a business that doesn't have your small business' interests at heart. Never has, never will. We've shouted from the roof-tops to never build solely on a third-party platform, and now non-tech businesses are going to learn that lesson. But, this is Facebook; they're not a benevolent entity, and they don't owe you or your business squat. Saying they're "double-dipping" or are a "scam" is ludicrous.
Thanks for sharing. The joke was really funny!
Before You Quit Your Job to Become an Entrepreneur, Read This
Travel with Ostomy Blog
C was built as a replacement for assembly programming. It seems low-level today but it does a huge amount of work for you. Call stack manipulation, computing offsets for nested struct members, converting arbitrarily complex conditionals into the right branching instructions, coalescing a sequence of expressively named intermediate values into the same machine register... these are the things C does for you. I've never written a serious assembly program but I can imagine how annoying it is to do all that stuff manually. It would be easy to screw up.

I think C has been so successful because it made really good decisions about what to do for you. It eliminated a lot of those busy-work programming tasks without taking away your fundamental control of the machine. Automatic array bounds checking, garbage collection, ... they would have been unthinkable for the original goals of C. The stupid warts are annoying but I think C made fundamentally sound choices of what to do automatically and what to leave up to the programmer.

We all talk about modular, abstract code, but back in the day "modular" meant "use the same calling convention for every int(int, int) function", not "dependency injection". From that perspective, C must have felt like a huge leap in modularity and abstraction from assembler.
Restrict is a big hammer. You can work around aliasing suspicions simply by imagining you are programming a load-store machine whereby local variables are registers. You have some algorithm that works with several different objects, such as structures and arrays. You can help the compiler (and the reader!) by writing code that isn't repeatedly dereferencing pointers, but which loads values into local variables.

Concrete example, doubly-linked list deletion, bad:

victim->prev->next = victim->next;
victim->next->prev = victim->prev;

Here, the compiler doesn't know whether the assignment to victim->prev->next clobbers victim->next, which is evaluated again in the second line. If you write it like this, you eliminate that concern:

node *prev = victim->prev, *next = victim->next;

next->prev = prev;
prev->next = next;

The assignments here do not interfere; the first line assigns to a "prev" structure member, and the next line doesn't access any such thing; it uses the "prev" local variable which isn't a structure member.

Caching in local variables is preferrable to using some C99 "restrict" voodoo that introduces undefined behavior.

In the case of the above linked list, where are you even going to stick "restrict"? There is only one incoming pointer, victim. Making that "restrict" doesn't help. You need it in the actual structure declaration on the next and prev pointers. Yuck, what?
Why not hire someone to run the company for you or at least handle the majority of day-to-day operations? Possibly promoting one of your existing employees into a leadership role or "co-founder" role if this is something you would consider.

I would be upfront with your employees now. Maybe one of them has an option you have overlooked completely. Also, if you are honest with them now, it may help with any potential outcome down the road (for example, if you do end up having to shut down it is not a complete surprise to them). Also, by opening up about it, you might consider posting more details about the company here. Who knows maybe there is someone here who would consider making the purchase or taking it over for you.

Just a couple thoughts. Good luck!
>I think that this stunt will increase Facebook's profits in the short term, mainly because of businesses that have already invested in building their pages. Longer term, however, we'll definitely see a shift to direct email marketing.

That's right, nothing prevents current small businesses to post a last one paid facebook post telling the followers : "Subscribe to our mailing list here to get the exclusive offers"

But the key problems could be :

1 - People prefer browsing on Facebook than on their email client

2 - As a small business owner, creating posts on Facebook is easy, whereas creating nice emails that looks good isn't as easy. Getting feedback on these offers (Facebook Likes+Comments vs. nothing) is also a main problem for email marketing
Apple is updating the Apple Store
After you have tenure and a couple of grad students who believe in "A PhD is one of the few opportunities in academia to do true" ...
I felt no such freedom in grad school. I was constantly aware that I needed to write a cohesive dissertation, and that I needed to "own" it. This encourages students to continue working on a project just because it's "far enough" along, even though the student may have concluded its actual utility is lower than other projects.

It also discouraged true, equal collaboration because the student must own that work enough to claim it as their own. Personally, I feel I have much more freedom not having the dissertation hanging over me head.
> Are those Facebook's customers or yours?

They're Facebook's customers. That's a simple one. Does this situation suck? You betcha, my own mother is going to be hit hard by this, but on the other hand Facebook doesn't owe you anything, it's their platform (which I have a large dislike for).

The problem is that any platform that a business could use to reach their customers where they hang-out will basically require a social network, a utility for the regular user to give them a reason to be there. Businesses marketing to them costs money everywhere else, so it makes sense that that would be the way of earning revenue the utility would target.

Basically, they may have gathered the likes, but the reason they can is because Facebook exists and makes itself useful for non-marketing reasons, for regular users. If a business wants to market to the users on there, then it makes sense they have to pay for it, in my opinion.
The site looks good but it will never compare the masterfully crafted demonstrated by Geocities Bootstrap
Consider this a friendly reminder that if 50% of your business comes from Facebook, SEO or pretty much any source which you don't control entirely you should be doing everything you possibly can to fix that problem ASAP and ensure that you aren't setting yourself up for a very nasty surprise one morning.

"Fairness" aside, be thankful in this instance that you are getting advance notice. I wouldn't assume that you will always be as lucky in the future.
And youtube, which is finally an iTunesU replacement now that it has background listening.
That's funny to see this -- I just saw Marvin yesterday. He's getting frail but still has that devilish sense of humor and deadpan delivery.
I run Ubuntu on the Toshiba Satelite P96X and man do I love this thing. Tore out the DVD drive and stuck another SSD inside which lightened the load and obviously added more storage. Also swapped the primary HDD with an SSD.

The rig is now 4-5 years old has 12GB RAM and a 2nd gen i5 in it and this thing FLIES. Photoshop, Dreamweaver, Skype, and tons of browser tabs it does not miss a beat. You can prob pick this version up for $3-400 or a new one for $7-800 I beleive they all come installed with Windows but this model very *nix friendly.
Pretty much all of it. For example, let's take http://chrismorgan.info/blog/teepee-design-header-representa...

impl<'a> AnyRefExt<'a> for &'a Header {
#[inline]
fn as_ref<T: 'static>(self) -> Option<&'a T> {

trait UncheckedAnyRefExt<'a> {
unsafe fn as_ref_unchecked<T: 'static>(self) -> &'a T;
}

//I am guessing the second line is special because Rust can't deduce "to" should be a TraitObject type?
let raw = require_single_field!(raw);
let to: TraitObject = transmute_copy(&self);

//is this adding header and 'static together?
pub trait HeaderMarker<OutputType: Header + 'static> {

//I have zero clue what this is doing
//I can't even fathom a guess
match *self {
Past => write!(f.buf, "0"),
ExpiresDate(ref tm) => tm.fmt_header(f),
}

//so _raw is a reference to a vector of bytes inside [] and it might possibly return whatever a box is of headers?
fn parse_header(_raw: &[Vec<u8>]) -> Option<Box<Header>> {

//is there really a language keyword called macro_rules! ?
macro_rules! impl_header_from_fromstr {
//what in the world is ($ty:ty)?
($ty:ty) => (impl Header for $ty {
fn parse_header(raw: &[Vec<u8>]) -> Option<$ty> {

//who thought "h.is::<H>()" was a good way to test a type? Why not "h.is(H)?" Why the => ?
//what is this even returning? a tuple of false and None?
Typed(ref h) if h.is::<H>() => {
(false, None)
},

//... why not UTF-8? Because "{}"?
format_args!(format_but_not_utf8, "{}", HeaderShowAdapter(h))

The names don't make any sense to me at all. What the hell is an AnyRefExt? How does an UncheckedAnyRefExt differ? What in the world is the match thing doing? Why the asterisk on self? Why all the apostrophes and colons and dollar signs and exclamation points? Why is there both -> and =>? How does an &' differ from a '?

I could probably learn the language with a huge time investment. But for something aiming to fill the role of systems programming, it's just so incredibly different from everything else. It almost feels like they are going out of their way to make it as different as possible.

I know, this is all syntax stuff. C++ template meta-programming syntax is pretty insane, too, and took me a while to pick up. Yet when I attempt to read up on the syntax and the reasoning, it becomes even more confusing. I don't expect them to write a C++ clone, I understand this is their own language. But just a tiny modicum of reflection that people have spent 15+ years learning the syntaxes and behaviors of C-like languages would be so greatly appreciated. I mean, you see how Haskell is doing, and a lot of people blame that on the absolutely alien syntax to anything programmers are used to.

Yet, with Rust, everyone else with C-family backgrounds just seem to look at this, and go, "oh yeah that makes sense." Boggles my mind.