Live data from Hacker News

Eve Version 0

chris-granger.com

131–140 of 195 posts

Re: Eve Version 0

#131
post #130

Earlier quoted context omitted.

I'm curious, why not LuaJIT? It's small and fast and when you need it to be faster, it has excellent C FFI and the ability to add inline assembly[0]. [0]: https://gist.github.com/lukego/d15f3a65bd316ea2c2b6

We needed control over memory layout and some path to running in the browser. I considered writing the data-structures in C and the rest in Lua but it would require more manual memory management than Rust and there is no clear path to compiling mixed Lua/C projects into Javascript.

That's a good reason. :)

Re: Eve Version 0

#132
post #50

The change of focus is perhaps hard to understand without more context. Basically, there are two really different modes of programming: Most of what we see on HN is about building applications, servers, websites etc. Big, monolithic things that take weeks to years and are deployed to somewhere else and used by lots of people. Most programming tools are built for this kind of work, where the time between writing the c…

Granted, shell is useful for concise interactive one-liners. Granted, Java is a terrible replacement for shell. But there's no kind of programming where shell is better than Perl, Python or Ruby - "big languages" which, unlike Java, were designed to be useful for scripting by people who aren't full-time programmers. Because they are "big languages" they also have the property that you can build bigger things on them, starting from your messy prototypes. It's better not to even try that with shell or Excel.

Re: Eve Version 0

#133

Earlier quoted context omitted.

I am currently working as an Actuarial Analyst, but I have also worked several years as a programmer. As an analyst the tools I use are excel, access, SAS Enterprise guide and Oracle SQL developer. One of the big problems I face is that we have no good way to abstract away a process and really make it reusable. My general work flow is using SAS to pull data from multiple sources, combine and run the data through some…

We are having a similar set of issues where I work (insurance industry). Always looking for folks to chat with/discuss similar issues

Is there a way to get in touch with you?

Re: Eve Version 0

#134
post #116

Earlier quoted context omitted.

An excel power-user is indistinguishable from a programmer. If you are an excel power-user, and don't think you are a programmer, learn javascript, http://eloquentjavascript.net/ .

I've known many Excel power users who are technically minded and experts in their domains, but nevertheless are not programmers. (Edit: obviously they're programmers in the sense that they make the computer compute things, but not via a general-purpose language.) They have no interest in learning Python or JavaScript or even VBA—it doesn't fit with how they like to think. Instead, they lay out complex calculations in…

Sounds like Functional Programming might make a lot of sense to them (operating on transformations and whatnot)

Re: Eve Version 0

#135

Earlier quoted context omitted.

I get the opposite message, which is that programming tools and the process of programming are so bad, it's hard to get a computer to do a simple task for you without tearing your hair out, never mind building a UI. A better IDE (basically a better text editor) doesn't even scratch the surface.

The thing is, it's easy to say something is hard. Programming is definitely hard! The question is: Is it hard essentially, or is it hard accidentally? That is, can you remove unnecessary complexity from programming and suddenly it'll become easy? That was the proposition behind first LightTable, and then Eve as originally conceived. But neither of them really found a satisfying answer, a way to say "hey, for making y…

I've also concluded that it's essential: Programming is the solution for the broadest space of problems in computing.

If you can narrow the problem space to some finite number of goals and workflows, you have a viable application. Application environments with sufficiently many workflows always reincorporate programming as a way to let the user build their own solution - and most things are implicitly programmable, whether through a defined API or through tricky reverse-engineered methods.

What I think muddies the picture is the line between "design" workflows and "engineering" workflows - in the first, you're piecing together the existing technology in a different way, while in the second, you are transferring math and science knowledge into original technology. As individuals we experience personal bias as to which side of programming is more "necessary," which is reflected in the resulting choices of tooling, code style, and preferred problem domains.

Sometimes you want design-heavy programming - e.g., you add some business logic and a UI on top of a database. Other times you want to add engineering to an existing design - you're writing hardware drivers using a common protocol, a data formatting plugin for an application, etc.

Library code acts as a way to expose units of engineering, while a framework defines a broad, but still configurable design space. Sometimes you have overlapping design spaces - you can have client code that works with a GUI framework, but also talks to an internal model and remote data sources.

One of the things that is exciting about programming's evolution is how much it is based on an ecosystem of technologies. Outside of some embedded fields, the era where you are given a hardware manual and are told to come up with your own development environment is over. Successful technologies tend to act parasitically on prior ones. This leads to a lot of compromises, but the general direction remains toward "better fit."

Re: Eve Version 0

#136
post #37

Earlier quoted context omitted.

Agree -- if Facebook had an "export my friend list to Excel" button, then plenty of non-programmers could perform this task using existing tools. I read the tutorial and I am sort of struggling to see what benefit this would give someone who was already an Excel power-user.

Excel is a very powerful tool, but it reaches a utility plateau very quickly when you start going outside its intended purpose of being a spreadsheet application. You're correct that a power-user can do pretty much anything in Excel, but when you start talking about actual database operations (like Join), state, and UI, then you're at the point where the tool is working against you.

This is totally true, of course... I just think that exploring examples that would be really hard with Excel would make the point better.

Re: Eve Version 0

#137

Earlier quoted context omitted.

I get the opposite message, which is that programming tools and the process of programming are so bad, it's hard to get a computer to do a simple task for you without tearing your hair out, never mind building a UI. A better IDE (basically a better text editor) doesn't even scratch the surface.

The thing is, it's easy to say something is hard. Programming is definitely hard! The question is: Is it hard essentially, or is it hard accidentally? That is, can you remove unnecessary complexity from programming and suddenly it'll become easy? That was the proposition behind first LightTable, and then Eve as originally conceived. But neither of them really found a satisfying answer, a way to say "hey, for making y…

[deleted]

Re: Eve Version 0

#138
post #36

Earlier quoted context omitted.

I would argue that an API is easier to learn by several factors regardless of how complex it is compared to the abstract reasoning and modelling skills to actually transform the faced problems into a precise model.

I respectfully disagree. People who are not programmers use abstract reasoning and modelling skills all the time in their daily lives. They more than have the skills to solve this problem: You have a list of friends and where they are, you have your own location. Find the list of friends that are near your location, and send an alert (text, e-mail, whatever). How hard is that? There is absolutely no inherent complexi…

The spec is a bit more complex than that. It's not "Friends who are in your location" but "Friends who are not usually in your location but are now" (prodigal sons?)

Re: Eve Version 0

#139
post #50

The change of focus is perhaps hard to understand without more context. Basically, there are two really different modes of programming: Most of what we see on HN is about building applications, servers, websites etc. Big, monolithic things that take weeks to years and are deployed to somewhere else and used by lots of people. Most programming tools are built for this kind of work, where the time between writing the c…

I am currently working as an Actuarial Analyst, but I have also worked several years as a programmer. As an analyst the tools I use are excel, access, SAS Enterprise guide and Oracle SQL developer. One of the big problems I face is that we have no good way to abstract away a process and really make it reusable. My general work flow is using SAS to pull data from multiple sources, combine and run the data through some…

We use Pentaho Kettle for those kinds of transformations. It's FOSS, and connects to a whole bunch of programs and formats.

It's a graphical tool - you drag-n-drop modules, then configure and connect them, though it can also run scripts (it has JavaScript, Java, Bash and Ruby support, besides SQL, of course) - but after configuring the transformation/job, you can also run it on the terminal, which is useful for periodically re-running it.

http://community.pentaho.com/projects/data-integration/

Re: Eve Version 0

#140

Earlier quoted context omitted.

I am currently working as an Actuarial Analyst, but I have also worked several years as a programmer. As an analyst the tools I use are excel, access, SAS Enterprise guide and Oracle SQL developer. One of the big problems I face is that we have no good way to abstract away a process and really make it reusable. My general work flow is using SAS to pull data from multiple sources, combine and run the data through some…

We use Pentaho Kettle for those kinds of transformations. It's FOSS, and connects to a whole bunch of programs and formats. It's a graphical tool - you drag-n-drop modules, then configure and connect them, though it can also run scripts (it has JavaScript, Java, Bash and Ruby support, besides SQL, of course) - but after configuring the transformation/job, you can also run it on the terminal, which is useful for perio…

I've been doing a lot of work with Kettle as well, and it is a handy tool (albeit with a few warts).

What I think would be handy for use in an organizational setting, where "business users" might want to use some of the transforms, would be a way to publish transforms somewhere, making them discoverable and accessible to others. I don't want to make it sound like I'm talking about UDDI or anything (although, thinking about it, maybe you could use that), but just an easy way for a Joe Business User to get a list of available transforms, some explanation of what they do, what input they take, what they output, etc. And maybe a way to make changes to the "small stuff" (like the input and output path, for example) without having to load up Spoon and edit the ktr that way. Since transforms can be parameterized, that should be doable...

You could also picture combining this with something like a Yahoo Pipes like web interface, to let you define your own chains of transforms and operations as well. And hell, a web-based interface for editing ktr files would be a pretty interesting thing as well, if somebody would build it.

Post reply on HN