Live data from Hacker News

Ask HN: What are you Building?

news.ycombinator.com

31–40 of 146 posts

Re: Ask HN: What are you Building?

#31
post #12

I'm working on what I call "semantic version control". Namely, instead of diffing and merging text, the goal is to parse the program and diff/merge the AST. EDIT: A better way to state the goal: I want to take advantage of the underlying structure of a computer program to inform the diff/merge. The first step just happens to be diffing ASTs, but I go beyond this. I already have some neat features--for example, I can…

That is a great idea, if you can get it to work.

I think your nomenclature's wrong, though. If you are comparing via the AST, it's lexical version control.

However, on your second paragraph:

> That is, if you move a function, I can see that as a single action even if you modify the function a little bit when moving it

That already seems a bit more semantic than lexical.

Re: Ask HN: What are you Building?

#37
I'm building an interpreter inspired by interactive fictions (IF) by infocom. The goal is to be able to generate your css/less (including a generated styleguide) and HTML page skeleton just by writing plain english. Here is an example : "btn can be a button element" "btn can be a anchor element" "large-button is a kind of btn" "large-button color is black" "large-button background-color is lighten(black, 10%)"

I'm still figuring out the language but i'm feeling that it can be really promising.

Re: Ask HN: What are you Building?

#38
post #29

Pay for performance SEO quoting system. You don't usually know what you're getting w/ SEO because it's billed per hour or in the typical standard, pro, enterprise packages that work well for web apps but not keywords w/ different competition levels. And, it feels like the interests of firms aren't always tied to their clients. "Of course we have a guarantee...you're on the first page (of Ask.com)!" So, I'm working on…

Since good SEO is a personal relationship with the client, it might benefit you to personalize your About Page. Clearly the price is right, but to sell me, I want to know that there is a team behind the effort.

Re: Ask HN: What are you Building?

#39
I'm working on a perl script that will serve as a migration assistant from WhatsUp Gold v8 to Nagios v3. My company has 1,300+ hosts and 2,500+ services, all in various groups and states of health. It is my job to port over everything.

The version of WhatsUp we are using does not have a good way to export the configuration, and no API to query, so I am basically screen-scraping the web GUI for all the relevant info. I then do some basic sanitization (there are some illegal chars in Nagios configs), error-checking (how to handle a URL with a loopback IP address), and some cross-reference (putting hosts in groups and attaching services to them).

Overall it has been a great learning experience for me. I got to know Nagios quite well, practiced my perl a bit, and got to use git beyond just the tutorials I had read.

I plan on open-sourcing this as soon as I get permission from my employer. Company time and all that.

Re: Ask HN: What are you Building?

#40
post #12

I'm working on what I call "semantic version control". Namely, instead of diffing and merging text, the goal is to parse the program and diff/merge the AST. EDIT: A better way to state the goal: I want to take advantage of the underlying structure of a computer program to inform the diff/merge. The first step just happens to be diffing ASTs, but I go beyond this. I already have some neat features--for example, I can…

That is a great idea, if you can get it to work. I think your nomenclature's wrong, though. If you are comparing via the AST, it's lexical version control. However, on your second paragraph: > That is, if you move a function, I can see that as a single action even if you modify the function a little bit when moving it That already seems a bit more semantic than lexical.

Well, I'm using the AST to power most of the analysis. So the first-order diff is lexical--it works on syntax ignoring whitespace and the like. The second-order stuff, like matching substructures, is based on the first-order diff, but is semantic.

I'm also planning to add more semantic features. In the short-term, I'd like to detect other simple refactorings (particularly renamed variables). In the long run, I might even add very language-specific features (like trying to use type information to help with merging).

Post reply on HN