8 ms·
A complete rewrite of wiki as a single page application
- mourique 12y agoThis is based on the Smallest Federated Wiki Ward Cunningham has been working on since 2011. I think it's great that they're moving to new architecture, and the SFW looks great. The interface is still pretty arcane, though.
- cpach 12y agoThat sounds interesting. Do you have any more details on this architecture? c2.com seems to be overloaded at the moment.
- qznc 12y agoGithub: https://github.com/fedwiki https://github.com/fedwiki Lots of Youtube videos: https://www.youtube.com/results?search_query=federated+wiki https://www.youtube.com/results?search_query=federated+wiki
- andolanra 12y agoThis is the (admittedly somewhat long) transcription of a talk I use to introduce people to the idea: http://hapgood.us/2014/11/06/federated-education-new-directions-in-digital-collaboration/ http://hapgood.us/2014/11/06/federated-education-new-directi... The elevator pitch for tech-minded people is that wikis are to SVN as federated wikis are to git. Instead of a shared wiki that people modify, each user has their own wiki which consists of both pages they've made or forked, so information propagates back and forth between users. It's a really compelling idea and I hope they can make it work.
- jcoder 12y agoSo, the bar for contributing to the wiki has been raised from "has access to a computer" to "has access, knowledge, and resources to run a wiki server"? I hope one or more WaaS (wiki as a service) providers will emerge where a user account == a fed wiki node.
- andolanra 12y agoThat's already how it works. You could run your own node and share information back and forth with other nodes, or you could use an account on an existing node. This is clearly the case: if you go to the C2 Federated Wiki, you'll note the Login button.
- jcoder 12y agoAh, thank you. Still wrapping my head around the new architecture.
- SwellJoe 12y agoI believe the wiki is among the most amazing things to come out of the web (and think Cunningham is a genius for inventing it, or discovering it, or whatever process made it happen), and I can't count the number of times I've lost an hour or two spelunking into the C2 wiki. But, I'm having a hard time making sense of this UI. The panels popping up seemingly infinitely into the right side of the screen (every click makes a new panel) is unfamiliar and doesn't seem to provide a compelling value over giving the content a valuable piece of center page real estate. It feels like it is too proud of its cleverness, and that detracts from its value. And, some other nitpicks: The "fork this page" feature uses a flag icon...which means "flag this" to any one who has ever seen a flag. The flashing icons at the bottom of every page, representing every edit throughout history, is hella distracting, and again makes the content play second fiddle to something else going on. There is no way to discover this thing in anything resembling an ordered fashion. Most of the links on the "front" page (I guess?) are dead ends, recent changes provides pages that have content but provide a haphazard approach to understanding what I'm looking at. The neat thing about a wiki is historically that you start in one place, and can follow links back and forth until you grasp your subject. In this case, the links seem to have taken a backseat to the other stuff (which is made up of flashing things, poorly chosen icons, and weird gradient squares that seem to exist for no reason), leaving me hanging here with no idea what this thing is for and how it works. It pains me to say it, as c2 is wonderful (a little dated and simplistic, sure, but the world's first of anything doesn't need to be beautiful). Maybe it'll come to make more sense with time and further contribution from people who know what it is and why it is.
- agumonkey 12y agoI'm both sad and enjoyed by the move. I'm attached to the deceiptively poor old wiki, because it contrasts with the great content quality. At the same time, they're migrating toward something off the map of current technologies, and so the spirit of the first wikiwikiweb is still alive. ps: if someone has an archive / mirror of c2.com, I'll be happy to leech.
- arethuza 12y ago"deceiptively poor old wiki, because it contrasts with the great content quality" Does that remind anyone else of HN? I sort of rather like the lack of features on HN in the same way that I like c2.com.
- xiaq 12y agoBest wishes on the switch, but I'm afraid that the leap being taken is too big. Suddenly we go from bare HTML served by cgi to a single-page, style-rich and interaction-rich JavaScript application. That said, I actually like the new website, except for the bottom bar. When i scroll quickly on iPad it doesn't always stay at the bottom, and it is especially ugly when there is one page being viewed. I'm sure there will be people with way stronger opinion on the radical UI change.
- edwintorok 12y agoIs the switch complete yet though? The new wiki seems to have almost no content...
- deleted 12y ago[deleted]
- notthemessiah 12y agohttp://c2.fed.wiki.org/migrating-wiki.html http://c2.fed.wiki.org/migrating-wiki.html You might have forgotton how to use a wiki: you create pages that haven't been written yet.
- edwintorok 12y agoActually it looks like that the pages themselves just take a long time to load: for example clicking on 'extreme programming' shows the title 'extreme programming' and a blank page. Initially I assumed there is no content, but if I wait 5-10s then the content will be shown. This is very confusing: why show the title and empty page while loading the body?
- emsy 12y agoThe wiki I know for telling me all the new cool stuff is junk switches to a SPA? That's ironic. But seriously, in my eyes, a wiki is excatly what a SPA should not be used for, because of its document based nature. Trying to fix an overload problem with an SPA tackles the problem from the wrong side imho.
- notthemessiah 12y agoWhat's wrong with a single-page app? Wiki has always been a living document, best that the implementation formalize and facilitate a nature. If you really miss the classic format or need time to adapt, nothing stops you from using a Federated Wiki client that generates a page from the JSON.
- lmm 12y agoThe canonical form of a wiki page should be a page; it really is a document and so should be in a document format (in contrast, for something like a bank statement the data is primary (in some sort of structured format with e.g. numeric fields) and the page is merely a representation of it).
- Touche 12y agoIt can be both a SPA and a document. They are not exclusive.
- deleted 12y ago[deleted]
- notthemessiah 12y agoYou speak prescriptively of a canonical form, but I do not know what canon do you refer to. What do you define as a "page"? Are you possibly arbitrarily drawing a line at a HTTP GET request between the article and the edit button? If that's the case, Google Docs and Etherpad would fail to meet your definition of a page/document. Right now we see a declining rate of collaboration on Wikipedia, so it's natural that the evolution of the wiki would do more to encourage editing/forking: http://mashable.com/2013/01/08/wikipedia-losing-editors/ http://mashable.com/2013/01/08/wikipedia-losing-editors/
- blueskin_ 12y agoWow, that's some bad usability there. Talk about chasing the shiny over form and function. Javascript pages are the 'Flash site' of the 2010s and I can't wait until it's similarly consigned to its rightful place in the dustbin of history. All they do is waste my CPU time and memory, force me to enable a scripting language that is riddled with vulnerabilities just to see some content, and run more slowly than real pages would.
- 314 12y agoWhy is the usability bad? Pages are pleasant to read in that aspect ratio and it seems to provide a good solution to what to do with the bits around the edges. I like the stack of places that I've been before as context and think that it encourages exploration and clicking around more than the original site.
- detaro 12y agoI'd actually prefer the panes to be a bit wider, but that's not that important. What I find weird is that I can go 2 layers back on the same page, but then I suddenly have to use the browser's back button to go further up. I have to use the back button to close the right-most pane. And sometimes the back button does not work, or I have to use it multiple times to get "one step" back. Loading times feel worse, because you stare at a blank rectangle and wonder "is this article empty" and then it suddenly pops in. I accidentally dragged a paragraph around and had to go back to the front page and follow a link there to remove the local copy I created. I also don't know how I would publish that copy if it were an intentional edit. I'm sure it makes sense once you've understood it, but discoverability seems bad. Despite all its flaws TiddlyWiki seems to get the basic SPA wiki UI "more right" to me.
- HelloNurse 12y agoDelayed display of text is terribly bad. Consider the following scenario: 1) I click a link to "Decorator Pattern". 2) A new panel with the title and no text appears. 3) I assume a major malfunction. 4) The text of the page deigns to appear. Then I tried clicking on "Category: Pattern" and page text took about a minute, not a few seconds. Regarding the "stack" of previously read pages, it offers a typical stack behaviour: it can be blown away easily and efficiently. You can forget large pieces of history by the apparently harmless interaction of clicking on links in a previous pane.
- mbrock 12y agoThe original wiki was a wonderful community, alive in that ineffable way that very few online communities are, totally free and public. I wrote a blog post [0] about how strongly it influenced me as a person and the gratitude I feel for it. Ward Cunningham is a respected and intelligent software designer who works on open projects for the public good. The immediate cynicism and dismissal I've seen of his new project so far makes me sad. Why not look into what he's trying to do? [1] Why not try to learn something about how it works, rather than look at it for twenty seconds and then complain? [0]: http://swa.sh/the-original-wiki/ http://swa.sh/the-original-wiki/ [1]: https://www.youtube.com/watch?v=BdwLczSgvcc https://www.youtube.com/watch?v=BdwLczSgvcc
- hnyc 12y agoBecause first impressions are important. If you see a car with a small knob for a steering wheel, you'll find that it is more difficult to use. And even though the engine of the car might be a radical improvement, this still doesn't mean that it can be used, mainly due to the pesky knob instead of a steering wheel. Obviously, after a while of using a knob to steer, you can get used to it, but that initial lack of usability means that many people decide that it's not worth the trouble. Same with the website. You go to a website to use it. Sure, the idea behind the website may be wonderful and innovative, but if the access to it is unusable, then the innovation behind it all is for naught. When implemented well, the innovation is both shown in the explanation of it, and in the interface itself. Everybody is dismissing it after 20 seconds because it doesn't work. The idea may be good, but the implementation is what is being shown to public. If it were the idea that were being shared, then it would be a link to, for example, a blog post or source code. Finally, the reason that we're not trying to "learn something about how it works" is because it doesn't work, at least not yet. Which is why we are complaining.
- mbrock 12y agoI have some fundamental disagreements with "first impressions are important" when it comes to public software. First impressions are unreliable when it comes to understanding the value and potential of something that's in development. The whole wiki spirit is to release early, adapt to feedback, and encourage collaboration. When you say "it doesn't work" and "the innovation behind it is all for naught," I feel somewhat dejected.
- jrochkind1 12y agoNot preserving the URLs (or the content?) in the transition, really?
- learnstats2 12y agoI feel sad about this :( The original wiki was full of the hope of the web. Here, the UI is unintuitive. The site depends heavily on client-side processing. It loads slowly - there's no intelligent processing in advance. It uses canonical URIs OK, but the window.history updates late and the URIs are designed in a way that makes them difficult to share. The code is hosted on an ethically-dubious commercial site. The wiki has lost all the old data. I'm doubtful of the author's claim that this will last 20 years except at his own behest - I don't see how this is an improvement?
- mbrock 12y agoIt seems to me like the people contributing to this project still have lots of hope for the web. The original wiki had plenty of UI quirks, too. How much time have you invested into figuring out how it works? Is the problem that the main page doesn't explain things clearly enough? Maybe you'd like to contribute some documentation? With regards to loading times, that's an engineering issue to be improved. Efficient loading of documents is very possible with asynchronous requests; right now it looks a little glitchy, but this is not a fundamental issue. Where is your hope?
- learnstats2 12y ago> Is the problem that the main page doesn't explain things clearly enough? Maybe you'd like to contribute some documentation? No. There are several problems, the first of which is that I am served content as a Javascript-dependent blank page for no good reason. I'm not sure why you think I would contribute to this project. It contradicts my ideals for the future of the web on many levels, as I already explained, and some of which you overlooked when making your comment. Firstly, I do not want to support something that represents a backwards movement from my preference, and secondly, any change I would choose to make would likely be reversed as against the spirit of the project. My belief is that the Benevolent Dictator for Life/cult of personality model of existing open technologies is broken and should be shunned. (With apologies to Ward Cunningham, who I do not mean anything personally towards). People committing their resources to this project are not providing for the diversity that 7 billion web users need. I have plenty of hope. My hope is that other people will take this technology in a better or just different direction.
- talles 12y agoIs this new links to the right a new trend? It's the second time this month I'm seeing one of those.
- harryf 12y agoHoly SEO Fail Batman... Google only returning ~ 19 pages ( site:c2.fed.wiki.org * ) vs. 80K from c2.com
- wtbob 12y agoThis…this is abominable. Without JavaScript, there's no search; there's almost no content. With this change, Ward's wiki has gone from an invaluable resource to Geocities.
- jcoder 12y agoIt looks like each page a user navigates to is appended to the URL. I hope the team develops the notion of "browsing modes" with the option (on by default I would think) to use canonical URLs for a given page. Otherwise, a user trying to visit a bookmark at a later date will (1) wait for all prior pages in their browsing stack to load before the page they bookmarked, and (2) may potentially exceed a maximum URL length depending on how that particular wiki is served.
- NolMan 12y agoThe page claims that the new wiki is written with a distributed database but from what I can tell it just writes pages to the file system? https://github.com/fedwiki/wiki-node-server/blob/master/lib/page.coffee#L52 https://github.com/fedwiki/wiki-node-server/blob/master/lib/... Am I missing something?
- mbrock 12y agoHe doesn't mean that each server uses a distributed database to store its documents. The wiki is federated, much like Usenet is through the network of NNTP servers. For more info, see Cunningham's documents "On Federating Wiki" [0] and "Federation Details" [1]. This is distributed in the sense that Git is a distributed source control system. [0]: https://github.com/WardCunningham/Smallest-Federated-Wiki/wiki/On-Federating-Wiki https://github.com/WardCunningham/Smallest-Federated-Wiki/wi... [1]: https://github.com/WardCunningham/Smallest-Federated-Wiki/wiki/Federation-Details https://github.com/WardCunningham/Smallest-Federated-Wiki/wi...
- austinstorm 12y agoSmallest Federated Wiki is a great choice for the spirit of C2. But the interface is much more confusing than the old site, and lags behind similar wikis like TiddlyWiki.
- peterwwillis 12y agoWhat's important about this isn't the server or client, but the protocol. Like all peer to peer networks, all you need is a clear documenting of the protocol and anyone can create their own servers or clients. This way people concerned with SEO can expose the wiki's contents easier, and users can design a more attractive user interface, all while addressing the same content and sharing it the same way. If this works as a protocol, it should allow anyone to collaborate on documents that synchronize independent of a central source. This is really useful for people who need to be able to share some information in a multitude of ways and on different networks, online or offline. The only downside is it seems the addressable content has a limited scope. And of course, there's probably (i'm guessing?) not much in the way of access controls to prevent people from getting or modifying information they shouldn't have.
- chinpokomon 12y agoThis is precisely my take. I wasn't familiar with SFW until last night (this post), but I've been playing around with this concept for awhile myself. The only real drawback that I'm seeing so far is some link fragility. There are two countering forces at work here. You can take a link to someone else's content and mirror it back to your own SFW. If the source content changes and you don't take the "pull," your content is no longer relevant. This might mean for popular sources, lots of replicated copies of the source, but not always current. There is also a problem with the always available aspect. If someone is using content from another source, what do you do when the source goes down or just changes locations. At least with a non-federated wiki, the entire set of content goes offline together. That model is less prone to rot since it prunes entire branches and not just bits and pieces.
- chinpokomon 12y agoWith regards to SEO, I think a lot of you are missing something special about SFW, and that is that each page has a JSON representation. The client only exists to render the human readable view, but the JSON is fully crawlable by a spider. In a lot of ways, this borrows from the days of XML pages where the content was rendered using XSLTs. In this case, the content as well as page revision history and links are preserved as a single JSON object. This actually may make SFW content more crawlable.
- hungnv 12y agoit took me seconds to load the new wiki (the welcome page), slow by design?
- grhmc 12y ago"Log in with LiveJournal"
- mark_l_watson 12y agoI had to play with the new UI a while before figuring it out. No delete panel but when you go back in time to the left and click a different link, everything that had been to the right of the "clicked panel" disappears. So, you have to sometimes use your browser's "open in new tab" functionality to remember a context for later use - this goes against the one page web app concept, but makes it workable for me. BTW, interesting that the Node server code is written in CoffeeScript.
- orvr 12y agothis is a sad day for the internet. Maybe hn seems like the only site left for us low bandwidth people. Another site not loading...