6 ms·
Show HN: Mesh IDE – a code editor that feels like a spreadsheet
- fiatjaf 9y agoAmazing. But it seems like a powerful way to process data, not a way to write programs, am I right? Maybe it could be said to be a spreadsheet-like data processor that generates Javascript code to process that data in that same way. I hope I remember to install and try it when I get home.
- chrispsn 9y agoWell, programs are data and logic - so this is definitely a way to write and visualise data more easily, and potentially also a way to visualise logic tables more easily (such as cases of 'switch' statements, although that display logic hasn't been implemented yet). If you get a chance to try it, please let me know if you have any feedback!
- loa_in_ 9y agoThings I could use that for that I can think of right now: - fast prototyping of regexes - very good prototyping and feedback tool for record processing - computational graphics (plots, barcodes) - state machines And I bet many more. Very straightforward tool, and nicely done.
- ketralnis 9y agoI use and love Calca which is a maths oriented text editor that does live display of equation results as you type. I really wish that more programming were like this: real-time feeling, high feedback. It's a great model for exploratory stuff and I often use it in place of spreadsheets This is a cool project, I'm excited to see where it goes
- artur_roszczyk 9y agotry clojure
- ketralnis 9y agoI'm much more referring to editor UI than I am language
- CyberDildonics 9y agoThis sums up the whole thread. We have a lot more low hanging fruit in the interfaces than we do in the languages.
- freshhawk 9y agoI'm not sure if the parent did, but I followed what you were looking for and the answer is still "try clojure", perhaps more specifically it is "Try the Clojure libraries figwheel and devcards to do web stuff" but the push for immediate feedback and "interactive programming" is central for everyone. It's a community that took Bret Victor's Inventing on Principle talk to heart, already agreeing due to the REPL centric workflows that most people used. Bruce Hauman has some good talks about his tools, which are GUI application-centric and a joy to use [1][2][3] If you aren't doing web or native mobile GUI stuff then the default tools have immediate unit test/linting/spec compliance feedback triggered every time you save a file. Unless you mean you want a very simplified language, in which case you should look elsewhere. Clojure has definitely chosen the high power side of that trade-off, but this also allows some truly first class tools to be developed. [1] https://www.youtube.com/watch?v=j-kj2qwJa_E https://www.youtube.com/watch?v=j-kj2qwJa_E [2] https://www.youtube.com/watch?v=KZjFVdU8VLI https://www.youtube.com/watch?v=KZjFVdU8VLI [3] https://www.youtube.com/watch?v=G7Z_g2fnEDg https://www.youtube.com/watch?v=G7Z_g2fnEDg <- this one in particular is original and outstanding in my opinion
- S4M 9y agoThat would make a great combination with the 2D syntax [1] discussed here a few weeks ago [2]. [1] https://docs.racket-lang.org/2d/index.html https://docs.racket-lang.org/2d/index.html [2] https://news.ycombinator.com/item?id=14657857 https://news.ycombinator.com/item?id=14657857
- dyarosla 9y agoIt looks nice and all... but what can I do with it? Citing Paul Graham[0] You Need an Application to Drive the Design of a Language. What is the use case here? The readme describes vaguely that it's more suited to arbitrary length data processing and generation... but I can't come up with a practical example for which this IDE is applicable. I wish the developer would showcase SOMETHING besides the base interactions. Anyone have any ideas? [0] http://www.paulgraham.com/langdes.html http://www.paulgraham.com/langdes.html
- function_k 9y agoI'm in the same thought as you about this. IDE's are designed for one common purpose: Efficiency. In fact, everything that has to do with software engineering drives towards efficiency. This appears more like a pet project than a product with a vision of solving a specific problem.
- Hadley434 9y agoI am making 85 bucks each hour for working online. I never thought that it was legit but my best friend earns 11000 dollars every month doing this and she showed me how. Check it out by visiting followin link ------------>http://www.joinmate2.Com http://www.joinmate2.Com
- delhanty 9y ago>What is the use case here? Clicking through on the link that says "more discussion here" [1] the OP does at least explain the original problem with Excel that he was trying to address: >Mesh was started because I couldn't find a way in Excel to output the results of a formula across an arbitrary number of cells. ... This is definitely on the right lines. But it's a very difficult problem, both from a UI design point of view and actually producing a performant implementation in Javascript. [1] http://chrispsn.com/mesh-preview.html http://chrispsn.com/mesh-preview.html
- carussell 9y agoI'd like to see this self-contained. It looks like if I want to share a mesh with someone, I need them to be familiar with developer build processes (needing npm or yarn, etc; and including having Electron installed? not sure yet, since I haven't been able to try it out and poke at it yet—my case in point, really) I'd rather be able to send anyone my-data.mesh.html, they double click it, it opens in their browser, they can modify it at will, and there's a button that's functionally equivalent to a Save button to let them overwrite the orginal file. (Like a quine on steroids. Think TiddlyWiki.) This can be done, the only problem is that you don't get the typical Ctrl+S workflow—you use the in-page button instead, and it wouldn't let you get around the "Save As" dialog, but I'm thinking it should be only a minor nuisance. If you do it right, you could even standardize your serialization so that other tools could ingest a meshfile. This is really neat, and I'm going to play with it tomorrow.
- Hadley434 9y agoGoogle is <-paying 97$ per hour! Work for few hours and have longer with friends & family! On tuesday I got a great new Land Rover Range Rover from having earned $872 this last four weeks. Its the most-financialy rewarding I've had. It sounds unbelievable but you wont forgive yourself if you don’t check it... http://ow.ly/iBXm30dNtIZ http://ow.ly/iBXm30dNtIZ
- chrispsn 9y agoRight now you could share a Mesh file as code, but yes, you'd need to have a way of consuming that code. Right now there's no way of communicating the UI interface; I had envisaged that people would download Mesh separately from the internet. Embedding Mesh and its dependencies in the file itself is really clever. The file would get a bit bloated but maybe that's OK if: (a) when the file is consumed by other code, the interface exposed is clear (b) when the file is opened as a Mesh program, all the user can see is the program shown in the spreadsheet, not Mesh's code. It is potentially more risky from a security perspective if it is not easy to verify the Mesh source embedded in the file hasn't been changed to be malicious.
- erikpukinskis 9y agoThis is along the right lines. Whoever cracks end-user programming will be someone who embraces lists, and is willing throw away the vast vast majority of modern programming language-y control structures. Lists of strings + function calls + function definitions, that gets you pretty far. Anything that tries to reach much beyond that will fail. Function definitions are probably just lists of strings. Deeply nested statements are probably counterproductive. I think even IF statements are probably not necessary. Comparison operators plus function calls get you conditionals and so much more.
- smallnamespace 9y ago> someone who embraces lists > Lists of strings + function calls + function definitions Cue LISPers in 3, 2, 1...
- white-flame 9y agoAll the Lispers will do is continue to point to Greenspun's 10th rule being reapplied. ;-)
- erikpukinskis 9y agoLisp does way more than that. Far too much to be a plausible EUP design. The work in the Lisp community is mostly about using Lisp to make complicated generic control structures, but none of that is needed for EUP. The thing missing for EUP is a human relevant stdlib and you don't need anything fancy for that. Again literally just lists of strings, function calls, and comparators.
- mjburgess 9y agoIsn't this just another species of the same fallacy: that programming is just a special case of natural language use -- and to get all the non-programmers in on it, we just need to make a more humany language? This isn't true. Programming is the expression of your understanding of a problem in a totally novel medium, as with painting or mathematics. I dont think there's "End User Math" for describing the problems of daily life. The ability to express oneself in a target domain totally unlike the original requires a skill set of translation and expression that isn't reducible to "making the tool better". The thing stopping people building their own houses isn't the hammer. Painting their own landscapes the paint. Formalizing their motion through their house, the symbols of math. These are the smallest barriers to understanding. The appear significant, to you, who has already acquired (to a great degree) the skill of programming. The painter who is very practiced may well think that the ultimate problem preventing the masses from painting is how "thick the oil gets sometimes". Since that is his preoccupation.
- cwyers 9y agoThis doesn't feel like a spreadsheet.
- chrispsn 9y agoThanks - not sure whether to call it an 'IDE' or a 'spreadsheet', people seem to have concerns about both terms. On whether it feels like a 'spreadsheet' - is it just the absence of location-based referencing, or did you have other features in mind?
- MattRix 9y agoThis is neat. I've made some small prototypes in the same kind of space, trying to come up with a new way of doing spreadsheet-based programming. My one nitpick is that I want to be able to just try it in my browser right now. Oh also you really need a target project with something like this. In other words, you need problem you are trying to solve, so that you can know once you've solved it.
- carussell 9y agoSee my other comment[1] in this thread, and the one by sheeshkebab[2]. There are no shortage of instances where Excel plays a depressingly crucial role in critical LOB operations (including shops that you'd expect to know better). Essentially what happens is places like big manufacturing corps pour all their engineering budget into staffing themselves with folks who have domain-specific knowledge, but no idea how to build something resembling sane IT infrastructure, let alone focus on rolling out anything that could scale. So they all fall back to what they know from school, which are terrible (terrible!) hand-crafted spreadsheets that get passed around through email or thrown on a network store that everyone gets write access to. As in: this is literally how things run at the fab that produced the chips in your phone or the silicon in your big name desktop GPU. Occasionally, someone comes along who knows how to do pivot tables or use VBA to create basic macros and is revered as a wizard. Even in the best cases they end up being unmaintainable messes. Heck, a quick and dirty TiddlyWiki-like tool that just lets average people make basic tables would go far in dislodging Excel from places where it's burrowed down and is screaming "wrong tool for the job"[3]. 1. https://news.ycombinator.com/item?id=14824563 https://news.ycombinator.com/item?id=14824563 2. https://news.ycombinator.com/item?id=14824946 https://news.ycombinator.com/item?id=14824946 3. https://www.joelonsoftware.com/2012/01/06/how-trello-is-different/ https://www.joelonsoftware.com/2012/01/06/how-trello-is-diff...
- sheeshkebab 9y agosomething that converts an excel spreadsheet to code might be pretty useful - since most businesses run on crappy excel spreadsheets, having something that occasionally converts one to code could go a long way in "scaling" business.
- deleted 9y ago[deleted]