Hacker News new | past | comments | ask | show | jobs | submit | ice109's comments login

congrats on being an unempathetic ubermensch. I'm sure that's worth a lot.


We've banned this account for repeatedly violating the site guidelines.


that kind of thing is a collosal mistake in my opinion - just on the face of it I/o at compile time seems very wrong.


An understandable position.

Here's the context that makes it not a big deal:

1) If there is some fundamental issue with having a dev DB then you would just use another ORM, just like in C#. Really, this specific type provider is not an ORM, it's for SQL server data munging. Most every project I've seen in a decade has multiple dev DBs, many used in testing, many used for staging... being able to talk to a valid schema source should be relatively straightforward... but if it isnt then get a different type provider or use an ORM with explicit code generation.

2) Compile time guarantees about data sources is a huge source of comfort when dealing with DBs owned by external actors or teams. For data scientist, integrator, sys admins, and such the norm is connecting to operational DBs that you have very little control over. This specific Type Provider ensures that your scripts will not compile if there has been a breaking schema change. That means you're seeing these issues during deployment, not as costly runtime errors that may or may not corrupt your application state. Less debugging, more safety, better guarantees, immediate feedback on issues; all in realtime.

To summarize: if compile time validation of JSON structures, XML structures, SQL Schema, or custom file formats creates some kind of pain, then don't use a provider of types that relies on analyzing data structures to create code :)

For the other 99.9999% of the time type providers are a DREAM for working with external data sources, provide most of what we want ORMs for, and are very lightweight in comparison. It's rapid data exploration with built in prototyping. Very nice.


Why? Compilers have to read source files anyway. What's wrong with reading other stuff as well? For example, there are type providers for XAML, JSON, app.config, etc. Do they also seem wrong to you?


what are the things that you can tweak?


Most Go programs can benefit a lot from smarter memory management, which puts less strain on the GC and allows for certain optimizations. Things like refactoring your function to write into a pre-allocated buffer instead of returning a newly-allocated object. Or using a concrete type like `*os.File` instead of `io.Writer` so that the compiler can eliminate a heap allocation.

You can also eliminate some slice bounds-checking by "asserting" the size of the slice outside the hot path; see http://www.tapirgames.com/blog/go-1.7-bce

Go also has a great profiler for discovering exactly which functions/statements are causing slowdown or allocating excessive memory.

At the end of the day, though, I don't think most Go programs can be optimized to run as fast as their Rust equivalents (without dropping into asm, at least). There's just too much overhead that you aren't allowed to disable.


> At the end of the day, though, I don't think most Go programs can be optimized to run as fast as their Rust equivalents (without dropping into asm, at least)

To be clear, I meant programs that don't rely on things like concurrency or networking. For example, I think editing binary blobs (like images) would be just as fast as Rust, if I remember some of the research I did correctly. I don't have any sources on that, and it was a while back, so it's kinda irrelevant, I guess.


too bad sometimes it doesn't resolve pointers correctly


the arxiv tip is a very good one indeed


You might also like http://www.arxiv-sanity.com/


Looks amazing, thanks!

Is there HN for arxiv papers?(I saw the parent link has top hype sections, but it's not the same)


chord


are you like totally ignorant of how literary tests (and poll taxes) were used to disenfranchise minorities


if all the literate people were male and all the illiterate people were female, requiring literacy would not necessarily be sexism. you're conflating 2 different things. as did they. perhaps it did exclude more recently-emancipated black people. oh well. requiring literacy for something as important as an election is not obstructionist, IMHO

The fee you mentioned, however, is, IMHO.

if I had to hire a scientist for a job and the only applicants that were qualified enough were white males, hiring a white male would not make me a racist sexist.

i look forward to the day when people just stop trying to correlate everything both positive and negative to race, gender, age, and any other attribute other than "are you a good person" and "can you do this job well"


>i look forward to the day when people just stop trying to correlate everything both positive and negative to race, gender, age, and any other attribute other than "are you a good person" and "can you do this job well"

completely abstracted of the rest of history maybe that'd be possible. the problem is that black people in antebellum south were prevented from learning to read. so really it went something like: let's not teach black to read and then require literacy in order to vote.

>oh well. requiring literacy for something as important as an election is not obstructionist, IMHO

i would gladly wager that an overwhelming majority of voters don't read more than 10,000 words about any given election and get most of their data from television/radio/speech. so tell me why literacy is of paramount importance?


If it were universally applied, evaluated identically each time, and then used a clear pass/fail manner, you would be right. For example, the mathematical answer to "1 + 1 = ?" can be evaluated objectively.

But those "literacy" weren't anything even close to similar.


People are biased dicks. I know.


I've done a fair amount of "command line" ops so I'm comfortable with it but the question what will migration be like when we do move to an iaas?


It depends what your infrastructure consists of. If it's a db with infrequent writes it's going to be a lot easier to move than a db with a lot of writes.

You could also host on VPS and use parts of AWS e.g. S3 if you require asset storage, like photos, videos or other files.

Do you have much insight into what your infrastructure will look like at the start?


maybe mvp isn't there right word. we have demos we've developed locally and we're going to start pilots.


cited research aside this is asinine. let's pretend we could regress "did smile" on "genetics" and "culture" and inspected the coefficients of the covariates (i.e. investigate treatment effect). we would find that the effect of culture was much much much stronger than genetics.


Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: