Hacker News new | comments | show | ask | jobs | submit login
Java developer says he built, launched basic open source office suite in 30 days (networkworld.com)
52 points by Garbage 1697 days ago | hide | past | web | favorite | 44 comments

I think that a lot of us on HN would not even try to write a word processor, as we know how difficult it is, and that the barrier to entry is high.

This shows that it is possible to make a minimum viable product with one person with persistence and skill. Thank you for sharing!

Yeah cheers to that guy who built the office suite. Why is there so much negative feedback towards said hacker?

I couldn't agree more. While it may not be a "show hn" project, the developer may still be a member of the hn community. If one is going to criticise the project, they should at least do so constructively so they can improve it. I don't think any of us would really want snarky remarks as the feedback to something we poured our free time in and shared with the community to garner feedback.

Treat other developers in the same way we would want to be treated if in a similar position :)

Writing word processor is simple with proper components. Not everything is written in JS.

Swing contains a fairly sophisticated rich text editor component that can easily server as the basis for a word processor for many cases.

It has nice style support.

I did a neat little screenplay-writing program with it one weekend...I simply created styles that matched to common screenplay formats (like dialog, scene descriptions, etc), assigned hotkeys to the styles, then wrote a little smart method to figure out the next probable style when you hit the return key.

> It has nice style support.

Aside from the normal terror of using Swing, I agree with this--with one caveat. As JetBrains has learned, Swing's text editing controls and modern Linux look, regardless of style, like crap.

Less of a big deal for a word processor, but a pretty big deal for them. :(

I have never had a problem getting Swing to do what I want it to. People who bash usually haven't tried to actually learn it.

I guess it depends on the scope. We had to write a minimalistic word processor in a 4th-year CS class at my low-mid-tier university.

The problem is that some people are trying to re-create "The Office".

Want to build the perfect tool, the better alternative? That's great, but why don't you start with a single product, say, a word processor, or a spreadsheet?

Start small, iterate, get feedback, and so on, and then expand.

If you were able to beat MS Office in a single product, you must be doing something right, and chances are you will get far more resources (developers, testers, etc.) to build other products.

I second that. The offering looks like a mish mash and I cannot even imagine how usable it is. I don't know how an alpha version qualifies as recreated MS Office in 30 days.

What they should have done was to start with a single product like you said work on the essential features, get feedback and cruft out all the additional advanced functionality that the MS Office version has so you'd have a cleaner, leaner offering.

Although sometimes, at the end of the day, the issue isn't so much the software being the perfect tool but how compatible is the tool with existing processes. We use MS Office on the business side and OpenOffice on the engineering side - so much pain when sending documents across the two divisions with documents not looking the same.

The article says that it's not ever supposed to compete with MS Office, but to be a basic solution for companies with specific needs ("such as obtaining data from a Java library").

The article does say, however, that the product is eventually meant to compete with Google Docs..

Want to build the perfect tool, the better alternative? That's great, but why don't you start with a single product, say, a word processor, or a spreadsheet?

Or take a step back, look at the ways people need to collect, manipulate and share information today, and consider whether a new application that fits into an established category like “word processor” or “spreadsheet” is still a good tool in the first place.

I don’t know what will eventually displace MS Office as the universal toolbox for these things, but somehow I doubt it will look very much like classical office applications at all.

That's the Writely model: Create a "clone" of MSWord with some advantages (online, simultaneous editing, ...) and some disadvantages (not every feature under the sun), and make this one product very useful (and get acquired by Google).

As much as I admire this guy's effort - and his intentions. This is a tool of the past. And he based it on NetBeans?

You know, I spend 8 hours every day developing in NetBeans. It's OK to work in, and you can create cool applications with it, mostly Java EE apps in my case. But basing something on top of such a heavy and bug ridden platform is not a viable long term approach.

And why call it "The Open Source Java Office Suite"? Users do not care whether it's Java or C# or what not, as long as it's better than current offerings out there.

I could go on. Sorry - I'm not excited by this, but perhaps someone else is?

> And why call it "The Open Source Java Office Suite"? Users do not care whether it's Java or C# or what not, as long as it's better than current offerings out there.

It seems to be a trend with developers sometimes to get so involved in what they make that they forget who their target audience is (I would guess in this case he wants more than developers to use it). If his only fault in target audience usability is the naming, then he's doing pretty well (don't know if it is or not yet and usability is subjective). Either way, still a great learning experience taking on a project like this and I don't think I would judge it past "proof of concept" so far.

> "The office suite was built with NetBeans"

The code was written in Netbeans? The code uses the Netbeans platform (which rocks). Or both?

As I can see in the screenshots and videos, it's built on top of NetBeans RCP, which is cool :)

Not really, it´s based on Swing. Fonts are going to look horrible.

It appears swing fonts actually are fixable, see for example this approach using patched JDK (on Linux). (Fixing issue for Idea on Linux, but actually fixes it for all Swing apps - http://youtrack.jetbrains.com/issue/IDEA-57233 )

Thank you! There's also a fix for Arch, no idea if it's the same patch, though. https://aur.archlinux.org/packages/jre7-openjdk-headless-fon...




Well NetBeans RCP is itself based on Swing.

I use NetBeans on my MBP retina and the fonts look just perfect.

This alone is a reason for me to give it a try. NetBeans RCP is awesome.

This is about how productive you can be by using mature technology with plenty of libraries and components. How long would it take with Go or ruby with their still small ecosystems?

"BASIC" is probably the key word in that title.

I have been writing a framework that supports building what I consider to be the Minimum Viable Product of any successful social app. (One that will go on to success in this new environment of 2013, mobile phones etc.) We took care of everything, from user signup, to realtime updates and offline notifications, to access controls, roles, contacts, invitations, and even auto-scaling in case you get to millions of users. And it took me two years and help from two additional developers.

I guess that's a huge amount of effort for the number of people, but overall it's something that a large company like Google or Facebook already built in-house.

Just goes to show some problems require more than others to solve. And also, by leveraging existing libraries, you can more quickly build an MVP that may not scale but can show off the capabilities.

If your MVP requires you spending 6 man years building a framework, that's not an MVP.

An MVP doesn't need autoscaling, or most of the rest of the stuff you mention.

I always remember 37signals launching an app without writing a billing system, because they didn't need it until the end of the first trial period.

That's different. Our "product" is a framework that repeatably lets apps become viral and get millions of users, through mobile phone invitations instead of facebook. Bsaically it turns your mobile phone into a social platform, with the address book playing the role of the friend list.


Compare: http://qbix.com/blog/index.php/2013/04/a-new-kind-of-platfor... :)

I guess it comes down to what you understand "viable" to mean. Because if:

1. our app couldn't work on all mobile platforms => you wouldn't be able to invite many of your contacts, losing a lot of virality that could make the difference (http://luckyapps.com/blog/?p=12)

2. we didn't produce native apps, e.g. with phonegap => lack of integration with addressbook would reduce virality and convenience for the user

3. our app didn't have a one-step invite process => people would get tired of jumping through hoops and virality would suffer

4. our app didn't have realtime updates in chat => people would have to keep refreshing the page on their mobile phone and not get rewarded for engaging with the app

5. our app didn't have offline notifications => engagement would suffer, as the app wouldn't be able to notify people of relevant things via transactional notifications

6. we didn't have ways to manage notifications => people might get annoyed they are getting too many notifications ... yes, this one we could have done later

7. we didn't have ways to manage privacy / access => then everything would have to be public, making many people concerned ... yes, this one we could have done later

8. didn't have auto scaling where we split shards that get too hot and bring up more machines => if all the virality and engagement was as high as we expect, then our machines would quickly crash and we would lose ALL our momentum.

So we decided to invest in 1-8 up front before launching. We have an unusual strategy, having built a distributed platform with all the features of a social network that puts the power into your hands, and works with realtime and mobile ... and having a completely distributed team that is based throughout Russia and Ukraine. We are now in a position to launch many viral apps very efficiently and manage all their common issues on one platform.

PS: We didn't just sit on our hands while building this framework. We already released two apps that have 250,000 monthly active users, so that is why we were worried about growing exponentially from there, once we made them "social".

PPS: Wow, this was a long post. I hope it was informative.

I would be more grateful for one good word processor than another half baked fork of MS office.

It is not in any sense a 'fork' (did you mean clone?) of MS Office. It has a different use case and long-term goal. This I have concluded from reading the article.

Check out the cross-platform LyX. It's an outstanding front end for working with TeX, on many platforms (Windows, Mac, Linux). I really enjoy using it. On many Linux distros you'll just need to install the lyx packages.

LyX gets you out of the presentation frame of mind, and straight into your content. Recent versions do a great job of integrating vector graphics (like SVG from Inkscape). PDF output looks fantastic.

If you're on Linux, AbiWord is excellent.

If you're on OS X, Apple Pages is excellent.

Are you referring to the same Apple Pages that hasn't been properly updated since 2009 (excepted for iCloud integration, yay!). Also, in my opinion, Pages is a usability nightmare (only opening the inspector makes me want to cry :D)

I am looking for something smart. That will have a distraction free editing, markdown support, pagination and all the good stuff. Some small git integration. So my girlfriend can do version control on her works. I really miss that.

Sounds like you know what you want, any reason you can't start working on it?

I just did git init about 5 minutes ago. With me luck!

I shall!


If you're on anything, google documents is excellent - and you don't have to back up, you always have your documents, they are available mobile, and best of all, collaboration. I'd never go back to an installed word processor. The net benefits (no pun intended) are just too compelling.

and you don't have to back up, you always have your documents

Until Google closes your account for whatever reason.

Intentionally or not, the nickname of the submitter is very telling.)

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact