HNHacker News
TopNewBestAskShowJobs

gchp

504 karma · joined July 8, 2014

[ my public key: https://keybase.io/gchp; my proof: https://keybase.io/gchp/sigs/L35Ve85sqNsmK5LGVSh68k73MGjyEPVpmpM2WEyO4Es ]
submissionscomments
gchp··on Show HN: Iota – a text editor written in Rust
I second this 100%! Jump in, you won't regret it! The rust guide is a great place to start: http://doc.rust-lang.org/guide.html

The folks on the IRC channel are supper helpful too. Don't be afraid to ask!

gchp··on Show HN: Iota – a text editor written in Rust
Cool! Spent some time reading this last night, its very interesting. Hope to get more time in the coming days to read more of it. Thanks for sharing!
gchp··on Show HN: Iota – a text editor written in Rust
Thanks for checking it out! Rust is really exciting, I'm looking forward to seeing what the community can do with it.
gchp··on Show HN: Iota – a text editor written in Rust
Its true that Rustbox uses C code right now. Its just a wrapper around the original termbox library. My goal for rustbox is to be a full Rust port of termbox, removing the reliance on C. Hadn't heard of busybox, will check it out. Thanks!
gchp··on Show HN: Iota – a text editor written in Rust
Thank you!
gchp··on Show HN: Iota – a text editor written in Rust
Thank you! In my experience it hasn't been very unstable. Every now and again something will change that will break things, but that's become more and more infrequent. Overall, rust is great!
gchp··on Show HN: Iota – a text editor written in Rust
Sure, I could give it a go!

I've been thinking about writing a few articles on my experiences so far in writing the editor. Sorta covering what I wrote above. I could definitely work in some stuff on architecture and design choices. When I get around to it, I'll post it on my blog, and most likely submit it here too. Hopefully you'll find something useful in it!

gchp··on Show HN: Iota – a text editor written in Rust
I haven't, this is the first time I've heard of it. Will definitely check it out though, thanks!
gchp··on Show HN: Iota – a text editor written in Rust
I guess you could say that!

I initially found it much harder to work with Rust, as the language is more strict in a number of ways. But once I began to understand how it works, and began to grasp some of its concepts such as ownership and lifetimes I found it much more powerful than Go.

Go has a larger community right now, many more libraries and resources openly available. That's probably one of Rust's downsides right now however its catching up, especially with the launch of crates.io. I don't think it will be long in maturing following the 1.0 release.

Saying that, both are enjoyable to work with. But for me Rust wins out!

gchp··on Show HN: Iota – a text editor written in Rust
Thanks for checking it out!

> Text editors to me (a web programmer) look too intimidating to build from scratch.

Honestly, this was my thinking too before I started working on one! I, like you, work primarily on web applications and I had never really worked on "lower level" projects. I have always wanted to build a text-editor, though I thought it was much too big a task and didn't know where to even start.

Because of my background in web programming, I was most comfortable with Python and JavaScript. There were a couple of popular editors out there built with JS, (mainly brackets [0]) so I decided to try read through their source code. This helped a lot. Reading source code that I understood, or atleast could make a guess at understanding. I did some research into how brackets was built and found this sort-of useful architecture video [1].

Then, I heard about the Go language, and by accident came across a project called Vigo[0] which is a Vi clone written in Go. The codebase was pretty small, and I was able to easily implement a command for the editor and contribute it. From there I just spent as much time as I could in reading source code of different editors, and comparing them to eachother. Asking myself questions like "How does Vim handle buffers compared to Emacs?" - I have no idea, so I'd go look it up. It could take weeks to get an answer, and sometimes I couldn't figure it out. But I defintely learned Something in doing the research!

I also did some reading from the authors of popular editors like Stallman (Emacs)[3] and Pike (Acme)[4]

When I started building one of my own, I still didn't really (And still dont!) know what I was doing. If you look at the early commits of the project you'll see me totally rewriting pieces over and over until as I figured out better ways of doing it.

I wish I could point you to a single resource that helped me, but it was really a bunch of things that I did over time that helped me. I still don't know much about editors, and I'm sure there's people who can do a much better job than me, but I'm having fun doing it! And I think thats the most important part. Have fun in researching editors (or whatever you decide to build). If you're interested in it, it makes even the most boring and difficult ideas fun to work with. Feel free to reach out to me too if you need help, I'm happy to share what I've learned so far!

sidenote: I didn't know Rust before I started writing Iota, which made things even more interesting ;)

[0]: https://github.com/adobe/brackets [1]: https://www.youtube.com/watch?v=xm9kSWZyawg [2]: https://github.com/kisielk/vigo [3]: https://www.gnu.org/software/emacs/emacs-paper.html [4]: http://plan9.bell-labs.com/sys/doc/acme/acme.html

gchp··on Show HN: Iota – a text editor written in Rust
I actually contributed quite a bit to a fork of godit called vigo [0]. It gave me lots of insight into how text editors work.

When I went to start writing Iota, I found that there was no termbox-type library in Rust, so I created a wrapper [1]. My goal is to create a pure-Rust version, similar to termbox-go. It's a long way from that, but it will get there!

[0]: http://github.com/kisielk/vigo [1]: http://github.com/gchp/rustbox.

gchp··on Show HN: Iota – a text editor written in Rust
Thanks! It's still very much a work-in-progress, but I like it so far. Plus its been really fun writing it.
gchp··on Google should be broken up, say European MPs
Fair point. I didn't pick up on this from the article. It's this exact reason that I use Firefox & DuckDuckGo.

I based my statement on this:

> The European Parliament has voted in favour of breaking Google up, as a solution to complaints that it favours is own services in search results.

The key part there being ..it favours its own services in search results. In my opinion they are free to rank search results in whatever manner they wish.

gchp··on Google should be broken up, say European MPs
I agree that its a monopoly, though I find it funny that serious time & consideration is being given to discuss breaking them up.

Google are a company who have a product (search, among many). Their product is successful (many people use search). Competitors obviously find it hard to break into the market, and want to make that easier. Is this not how business works? A company creates a product and tries to make it as popular and widely used as possible? Also, is Google not at liberty to decide how it ranks search results? Surely if they want to hide results from competitors they are allow to do that?

If my company made car tyres, and 90% of car owners in Europe used my tyres, I'd find it absolutely ludicrous if my competitors tried to break up my company because its "unfair" that I have the market share.

Google has the market share for search, whether its "unfair" or not. Competitors should work hard to push them off with their own products, not by trying to break up the organisation. Seems somewhat petty to me.

There are other arguments which are valid such as:

> How Google copies content from other websites - such as restaurant reviews - to include within its own services

Disclaimer: I don't use Google products.

gchp··on Show HN: Perfect time tracking for developers right in your IDE
Thanks for the response!

Sweet, I didn't realise that. A self-hosted version would be cool. For my own projects I don't mind sending data, just for corporate work its more difficult. Having something I could run on my own machine and periodically get reports from without having to manually enter time constantly would be really handy.

gchp··on Show HN: Perfect time tracking for developers right in your IDE
Personally, I'd love to see this working without having to send data to the Koala servers. My job has some strict policies on what data can be send to third party servers and I'm not sure how this relates to project/client names/details. I imagine others are in the same boat.

I believe it would be relatively simple to calculate time locally and then display the totals in some custom Atom buffers.

gchp··on Introducing free voice calls from Hangouts
Free in price perhaps, but I'm not sure how readily I'm going to start using this. Call me paranoid but voice calls are probably the one part of my life right now that Google don't have access to. I just don't know how I feel about handing another piece of information over to them. It's not even that it's Google - I'd say the same thing for any other corporation trying this. I removed Facebook from my phone for this very reason. Just makes me feel that little bit uneasy.
gchp··on The Satoshi Nakamoto SourceForge account has been hacked
Please excuse my ignorance here, but how does one track a persons location by their IP? Any time I have tried to look up an IP, I get a really vague result. ie "Somewhere in this city". Is it possible to get very specific results?
gchp··on CLion, the new C/C++ IDE from JetBrains
I don't hate Java. I have no experience in using it as a language, so I'm not qualified to comment in that regard. My point is that I would rather not have to install it simply to use this tool.

Its like having to install Ruby simply because these a single Gem that you want to install and there is no other way to go about it, even if you never use Ruby for any other purpose. More of an annoyance than anything else.

gchp··on CLion, the new C/C++ IDE from JetBrains
Yep, I had to install OpenJDK. Haven't tried installing on anything other than Linux, though.
gchp··on CLion, the new C/C++ IDE from JetBrains
I use PyCharm quite a bit, and I find it great. To me though slowness is a big issue. I often switch back and forth to vim, and occasionally find the slowness of pycharm quite jarring. Had I not been using vim, perhaps I would not have noticed, but it does have quite an impact at first.

Their autocomplete is second to none, however. And once that has parsed the codebase it is lightning fast. Definitely recommend giving it a try.

gchp··on CLion, the new C/C++ IDE from JetBrains
I have to say, I'm a big fan of JetBrains products. I use PyCharm pretty much every day and love it.

The only thing that I am not a big fan of though is having to install Java to run any of their IDEs. I'm not a Java developer, and have no need to install it on my system, so having to install it just to use my IDE is a bit of a pain. Small price to pay I guess for an otherwise great product.

Congrats to the team on another great-looking IDE.

gchp··on Django 1.7 Released
Not sure if it solves your problem, but in the dev version of Django you can use the `--keepdb` flag to `manage.py test`. This will preserve your test database after the test run, and only run any new migrations. It gives a real speed boost.
gchp··on A minimal, UI-focused programming language for web designers
I was thinking the same. From the few examples given, it seems to be only useful to toggling classes from click events. Would like to see some more use cases.
gchp··on New Sublime Text 3 New Beta
This solved it, thank you!
gchp··on New Sublime Text 3 New Beta
Good point, I'm using xubuntu 14.04.
gchp··on New Sublime Text 3 New Beta
Is anyone else seeing a strange issue on Linux where the sidebar doesn't toggle open/close folders correctly?

The folder icon toggles between open and closed, however the files inside are not displayed. I can still open files via the command palatte, but I'd like to be able to browse via the sidebar too...

Update: My desktop environment is xubuntu 14.04.

gchp··on Lime Text: Open Source Sublime Text clone
Compiling on Linux is relatively easy now, though I still find Atom far too slow for everyday use. In my view it has a long way to go in regards to replacing Sublime.
gchp··on Lime Text: Open Source Sublime Text clone
Out of interest, what do you print code from Sublime? Interested in hearing why you need to print code, if that's the case.
gchp··on Emacs with a package on a league of its own: Helm
I had always stayed away from helm, as I didn't realise it could do all this. Started using this morning after seeing this guide. Nice work!
← PreviousPage 2 of 3Next →