Linked by Thom Holwerda on Sat 11th May 2013 21:41 UTC
Windows "Windows is indeed slower than other operating systems in many scenarios, and the gap is worsening." That's one way to start an insider explanation of why Windows' performance isn't up to snuff. Written by someone who actually contributes code to the Windows NT kernel, the comment on Hacker News, later deleted but reposted with permission on Marc Bevand's blog, paints a very dreary picture of the state of Windows development. The root issue? Think of how Linux is developed, and you'll know the answer.
Permalink for comment 561745
To read all comments associated with this story, please click here.
RE[19]: Too funny
by Alfman on Thu 16th May 2013 00:57 UTC in reply to "RE[18]: Too funny"
Alfman
Member since:
2011-01-28

satsujinka,

"About CSV vs. XML: Considering Golang's csv and xml packages: both of the 2 go files for CSV have a combined size smaller than xml's 3 of the 4 go files for xml (the 4th is approximately the same size as csv's reader.go). To me this implies that CSV doesn't have any escaping issues that are particularly harder to solve then XML or JSON (JSON actually has the most code dedicated to it.)"

This methodology really isn't sound, but I don't really want to get into it.


"As for metadata: you have to provide a schema no matter what data format you choose. XML isn't better in this regard; usually you match tag to column name. CSV has a similar rule: match on column position."

XML provides self-defining metadata (the names and possibly other attributes), where as CSV does not. It's illogical to me for you to disagree, but let's just move on.


"However, I fear figuring out what this 'printf's interface should be will not be so simple."

It doesn't really matter for the purpose of this discussion, whatever makes it easiest in the context of the language the library is being written for.


"What would these data tuples look like? You'll need some data to mark where these tuples begin and end, their fields, and their relation. End can double as begin, so only 3 symbols are necessary (but the smallest binary that can hold 3 is 2 bits so you may as well use 4.) If you omit table separators, then you need to include a relation field."

Your still thinking in terms of text with delimitors, but the whole idea behind the tuples would be to use a higher level abstraction. Think about how a class implements an interface, you don't have to know how a class is implemented to use the interface.


"It's just that saying 'use tuples' ignores the fact that we still have to parse information out of our inputs in order to do anything."

No, you as a programmer would be using the higher level abstraction of the tupple without caring about the mechanics used to implement them. You keep thinking in terms of programs parsing text streams, but with the tupple abstraction you can skip the intermediary text conversions entirely. You only need code to convert the tupple to text at the point where text is the desired form of output like in the shell or a logfile. I'm not sure your understanding this point.

Reply Parent Score: 2