|This is a bit long.|
A few weeks ago, I posted that I was starting to teach myself Arc (http://arclanguage.org/item?id=12965), and doing so by playing around with news.arc. As mentioned, I’m a noob, and my only previous coding experience some FORTRAN while doing some physics modeling years ago. I said that I would share my efforts, and I decided to share what I’ve done so far. Please go easy on me, eh? I’m not going to knock your socks off here. That said, I’ve done what I have on my lonesome, and I am pretty proud with where I’ve been able to muddle to thus far.
So, basically after figuring out how to get news.arc running on Linode, how to SHH in and all, started tweaking the site towards something a tad different. I didn’t know exactly what I wanted to do at first, but as I played with it, the ideas started to coalesce and I started moving towards something that made some sense for me. Here are most of the changes I’ve made thus far, to what I am calling Hubski:
Scoring: I made karma into a currency, which you spend on votes. Upon voting, karma is converted to clout. Everyday you earn a bit more karma on your first vote, and one more on your first comment. The amount of karma you earn per day can increase based on your clout, and your followers.
Following: You can follow people, and people can follow you. A user’s submissions comprise their ‘hub’, and when you follow people, the content of their respective hubs is fed into your ‘hubfeed’. As a result, you can construct a type of aggregator based on the users that most interest you. (I was pretty happy to get this working smoothly, and although it’s pretty trivial stuff, it felt like my biggest accomplishment thus far)
Topics: Posts can have a topic associated with it. I’m not done here. Right now a topic is only an attribute of a story, and I want to create a table of topics, making stories attributes of them, thus, you could click on a topic, and it will pull out all the stories that share that topic. Even better, I’d like to make a place where you could list multiple topics, and all matching stories would be pulled up.
Hovertext: If you hover over the title of a post with text, the text is brought up. Hover only shows if you are logged in, and can be toggled on/off. Thanks to akkartik for the hover format suggestion: http://arclanguage.org/item?id=13011
Tabs: Clicking the ‘tabs’ link in the subtext opens both the story URL and the comments in two new tabs. Also only visible when logged in. Also can be toggled on/off.
Text: Stories with a URL can also have text. Since the hubs are kind of like a blog, I decided to give the author the ability to comment on the submitted URL. Also, when viewing a hub, the text of a submission is shown with the submission, making the post more blog-like. There’s a few more changes I have planned here.
Flattr: I enabled users to include a flattr link. Seemed like something that could be interesting.
Aesthetics: I’ve made a few layout changes. Nothing too crazy. Moved some menus and link around. Removed some. I have a bit more planned here. I am still getting used to the HTML definitions, but I am getting the hang of it.
I think that’s most of it. I have quite a few more things I want to try, including RSS for an individual hub, include search, completing topics, and make a basic inter-user messaging system. I also have a couple more ideas that are only half-baked or too technical for me at the moment.
Anyway, my wife and a few friends of ours have been using it as kind of a HN for general content, and it’s been enjoyable. I decided to purpose it for that, and keep the site deployed in a public-way. I’m purposing an old laptop for development. Part of me feels dirty deploying a hacked functional program like news.arc, but this has been a great way to start to familiarize myself with building and running a web app. Having friends use it is all the more motivating to keep at it.
As an aside, I was recently on the non-technical side of a start-up that floundered, and all along I kept wishing I could contribute to building the app. I’ve got a lot of energy and ideas, and it was frustrating to have more in my head than I could build with my hands. As a result, I decided to try to teach myself some coding whatever the result. Maybe I should have started with something more web app friendly like Ruby, but my FORTRAN experience, combined with some ideas for HN motivated me to start with Arc. In due time I am going to try to build something from scratch, maybe in another language, who knows. However, for the time being, I decided I am going to keep tweaking Hubski.
I still have to figure out how to redirect www. to the non-www address.
Any thoughts or tips would be greatly appreciated. I really intend to keep doing this on my own as much as I can, however. I have some pals I could call on if I got in over my head, but it’s my personal mission not to do that until I have to.
I kind of feel like I am telling a group of marathoners about how I ran a mile…