Good framework for Ruby web development [closed] - java

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
Basically I am java developer and exploring ruby and ruby related framework right now. I am mostly working on web based projects. I had heard about RoR and Merb for web development in ruby. I am looking for good tutorial/books for Merb.

Start with rails because:
Rails is the most popular web framework on Ruby, and one of the most popular frameworks of the past years.
Also Merb is merging with RAILS:
http://yehudakatz.com/2008/12/23/rails-and-merb-merge/
So you are better off starting with Rails:
http://rubyonrails.org/download

Sinatra is another Ruby web framework. I've heard that it's geared more towards smaller size applications.

Tough call, but I'd start with Merb. Rails 3 will be Merb 2. The Merb core guys are taking over Rails development to make it more Merb-like (h ttp://yehudakatz.com/ et al.).
The drawback is that Merb is a moving target and documentation is somewhat lacking, whereas Rails has extensive beginner's documentation available.
There are h ttp://book.merbist.com/ and h ttp://wiki.merbivore.com/, but both are very incomplete and not infrequently out of date. There are the autogenerated API docs at h ttp://www.merbivore.com/documentation/current/doc/rdoc/stack/index.html , but those are also horrendously incomplete (most methods have grossly incomplete or nonexistent documentation that doesn't, for example, list what options are available in an options hash.) There are tons of blog posts on various Merb features, but the vast majority are horrendously out of date and no longer applicable to current Merb.
If you do go with Merb, resign yourself to spending hours reading the (minimally commented) test suite and source code yourself to figure out how to get things done. (You'll get a deeper understanding of the library that way anyway, at the cost of some upfront screen time reading code.)
Rails, by contrast, is a relatively stable target with extensive tutorials and documentation, but it's all going to be obsolete in Rails 3 when it's Merbified. You'll have to learn Merb anyway at that point, rendering all your work learning classic Rails useless. So I'd go with Merb from the outset.
(sorry about the lack of hyperlinks, but "new users can only post a maximum of one hyperlink")

Start with Rails ... rumor has it merb will be assimilated http://weblog.rubyonrails.org/2008/12/23/merb-gets-merged-into-rails-3

Related

Rewriting old/deprecated code java [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
The company I work at has a piece of code they would like to rewrite. It uses Java/Java server faces. The problems with it are that it is old and uses depreciated code, was written in an IDE that is no longer available and doesn't work well with netbeans, and that it is kind of sloppy coding in the first place. No one really knows its structure and there is limited documentation.
Before beginning on the rewrite, we would like to find the structure of the old program and get a decent UML diagram. What tools would work the best in this situation? So far we have looked at one called Agilej.
Sorry if this is a little vague, I'm just a lowly intern an haven't been filled in on everything yet =p
You can use JArchitect, a pretty complete java static analysis tool
I'm not giving clickable hyperlinks as you should be able to find them easily through a web search and there may be more than 1 link that is useful for you
Sparx Systems Enterprise Architect has very powerful reverse engineering capabilities. Java (also compiled binary JAR) is in the list of supported languages.
I have used Enterprise Architect's reverse engineering features several years ago to help us understand and design modifications of legacy C++, QT code.
Enterprise Architect was able to automatically retrieve the class model. I then used the raw class model to drag/drop draw several other diagrams including only classes of my interest with level of detail I needed etc.
In the range of other static code analysis tools (e.g. the code flow visualization) I don't know which tool particularly supports Java well enough. Quick Google points e.g. to Coder Gears JArchitect. In the past project I have mentioned we used Doxygen's automatically generated documentation. Part of that were also some automatically generated graphviz dependency diagrams.
To clarify the design and visualize the flow (especially big legacy functions) I have found useful the Rapid Quality Systems Code Rocket flow visualizer
Once you get the basic facts at your hands through the various reverse engineering tools next step would be to go through them, annotate what is the unknown, what is doing what, basically apply some formal code review method (e.g. Fagan inspection or some of its derivatives).
(using evaluation versions of the various tools may be enough if you think ahead what are the required deliverables for your follow up actions. I guess the company is not planing to give you a >0$ budget)
The Agile Modeling site may have some good refactoring tips and some minimal UML mapping guidelines, start e.g. at Agile Legacy System Analysis and Integration Modeling

NLP Library (Subject Extraction+Sentiment Analysis) for a Java-based Web Application [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
I'm a college student looking for a NLP library to perform subject extraction and sentiment analysis in a Java-based web application for a summer-hobby project.
To give you a little context on what I'm trying to do... I want to build a Java-based web application that will extract subjects out of a Reddit submission's headlines, as well as identify the OP's sentiment for the headline (when possible).
Example Inputs:
Reddit, we took the anti-SOPA petition from 943,702 signatures to
3,460,313. The anti-CISPA petition is at 691,768, a bill expansively
worse than SOPA. Please bump it, then let us discuss further measures
or our past efforts are in vain. We did it before, I'm afraid we are
called on to do it again.
My friend calls him "Mr Ridiculously Photogenic Guy"
Insanity: CISPA Just Got Way Worse, And Then Passed On Rushed Vote
I'm currently trying out AlchemyAPI, but it sounds like better NLP libraries exist out there. Preferablly, I wouldn't be restricted to a limited number of API requests in a given time period (AlchemyAPI has a quota). I've heard the names of GATE, LingPipe, and OpenNLP - however, I'm unsure whether they fit my needs.
I'm looking for framework/library/api recommendations, or even better, comparisons from experienced users. My experience with NLP is extremely limited, which is why I'm asking for help here (ps: if anyone has any resources for learning more, outside of www.nlp-class.org, please let me know!) :)
First, I'd highly recommend using python, as the NLP libraries are a bit more user friendly than java, and it'd be a lot less code to maintain for a one-man project.
I can't think of anything off the top of my head to do either classification, so my recommendation would be to train two classifiers, one for subject, and one for sentiment. You'll have to label data and define features, but I think that wouldn't be too hard, especially with sentiment where you build up a dictionary of 'emotion' words. Labeling data is a pain in the ass, but that and good features are how you get good classification.
Subject Classifier:
Use NLTK with a Naive Bayes classifier, and define features as the word (lowercased), and word bigrams and trigrams.
Sentiment Classifier:
Same features as subject classifier, but also have a feature that says word w is in emotion dictionary with connection c. So, word 'bad' means 'bad sentiment'.
Once you've amassed sufficient training/testing data, you train your classifiers and optimize features, if necessary, and then you can run the classifiers against whatever other data you want.
General Purpose Libraries (Java):
OpenNLP
LingPipe
Weka
Stanford stuff
Libraries (Python):
NLTK
Scipy

A good Swing project for learning best practices [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a book, tool, software library, tutorial or other off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
I would like if there is some project developed in Java to learn Swing best practices. I mean an open source project hosted on the Internet through SVN or similar. I've been reading some questions in Stackoverflow about this topic but I would see some projects. Thanks.
The way I learned Swing best practices was reading the Swing source code in the JDK and practice. Follow Sun's practices and you'll be on the right path.
Read the implementations of JTable, JTree, JScrollPane, the various LookAndFeels, SwingWorker, SwingUtilities. Their event handling and MVC patterns are extremely complex but very readable, maintainable, and extensible. Essentailly, every time you use a component, go read the source code and understand what and why they do it. Eventually, you'll start doing the same thing.
And most importantly, code. Write some large programs, and you'll start seeing things that don't seem right or optimal. Come on to Stack and find out what you're doing wrong or could do better. Write something else, and do the same.
That said, the following projects have (or probably have) good code:
SwingX - The maintainers of SwingX were Sun/ex-Sun people, and I've always thought of it as unofficial incubator for future Swing features.
Squirrel (A JDBC client) - I haven't actually looked at their source, but I've used the program for years and it doesn't show any of the common flaws in badly written Swing programs. With how powerful it is, and how well it works, I would put money that's its extremely well written.
InfoNode (A powerful docking framework) - I've gone through quite a bit of their code, and its pretty solid.
JFreeChart (A powerful charting library) - Not the greatest code, but much better than average, especially taking into account its an old project that was never really intended to do everything people are using it for. That said, it is very extensible, and I've never had a problem molding it to my needs (which are much, much more than its original intentions).
GlazedLists (A highly performant event-based list library) - Not exactly Swing, but it's event handling is similar to Swing. They also have implementations of Swing models and some custom components that are extremely fast.
JIDE Common Layer: A massive collection of custom components that serves as the basis for their commercial components. I haven't gone through their code, but their components are beautiful, and since their primary focus is commercial Swing components, once again, I'd put money that their code is solid.
I found it very interesting to see a professional-quality application written in Swing, such as IntelliJ IDEA Community Edition. Now that it's open-sourced, you can check out the code and start digging in. Be forewarned though, there are no comments!

Beginner Java Applications? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
I have learned that the best way to learn a language is by finding a good project to start on, and working out how you would create it. I've been programming for 4 years as a hobby, and it's only been in PHP, so I decided that I should learn a "real" programming language. I have tried C++ in the past, however I was never able to find a project that I could apply it to, and therefore I never really learned much.
Now, though, I'm checking out Java, and so far I really like it. My question for you is: What would be a good project or projects for a beginner to learn the main features of Java? I understand basic OOP practices and such. What I really want to learn is all the little libraries and functions inside of it. For example, in PHP you learn to use many array manipulations and other functions built-in to do work for you. I would like to learn what these are in Java.
As I said, I don't really want just documentation, I'd like a project that I can apply Java to.
Whenever I learn a new language I start with a Mandelbrot. Just to get the hang of loops, variables and drawing.
Many other simple learning progs are possible. For basic screen/key/mouse i/o and timers, try a Tetris, Breakout, or Clock/alarm clock. To learn audio interface make an Electric piano/synth. To learn maths/recursion/string manipulation i often write a quick expression parser + graphing prog. To learn sockets, you could try a simple p2p chat.
Java is a good choice, good luck!
My advice, take a project based course some university puts up. Something past COMP 101, but not too theory heavy.
This one's how my university breaks sophomores. Its fun, and requires you to think about design and (a little) about data structures. Good "salt of the earth" programming: consoles, file IO, parsing, collections, etc. No GUI, though there's another project for that and threading.
dont rush urself, get a good java book and study from the chapter 1st and make sure you solve all the exercises of each chapter. First get ur basic / foundation strong, then u can think about how to apply that knowledge in project. And make sure u also get a good book about algorithm. If you had an experiences in php for 4 years, you must developed something with php i can assume, so try to develop same application with Java now, it will give you good insight about Java. And one thing... try to focus on how you can write good quality code! Anybody can write code but good quality code is rare, focus there.
while general, I would say find a web application that interests you. If you are familiar with PHP, you are probably familiar with many web technologies. Java on the server is a nice alternative to PHP, and deploying a Java web application is pretty simple.

Good Stripes tutorials / examples? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
The company I just started working for is using Stripes for parts of its web page development these days, and while it seems to be a nice enough web framework it no one really uses it-- it is almost non existent on the 'net. It's not even first in it's google search and the result you do get is for its old home page.
So, do any of you people use Stripes? Of your own volition? Do you know of any good tutorials / examples?
I recommend checking out the book referenced by jko:
a book from The Pragmatic Bookshelf called Stripes: ...and Java web development is fun again
Whilst still in 'beta' the book covers everything very well.
Another good place to start is this ONJava article.
I have used Stripes on a few projects now and have liked it a lot.
It may sound crazy but the Stripes quickstart and sample application documentation on the website does a pretty good job of covering the bases.
This is helped by the fact there is little to Stripes, probably because it is relatively new and not trying to be all things to all people. I would say give the quick-start a try and if by the end of it you are unsatisfied look elsewhere. At the end of the day you and your company have to be happy (and productive) with what you are using irrespective of how many people are using it.
I've never used (or even heard of) Stripes.
Regardless, there's a book from The Pragmatic Bookshelf called Stripes: ...and Java web development is fun again that may be worth checking out. You could also check out the Stripes mailing list archive.
It's a shame that some people perceive Stripes as a framework for which "there really just isn't much support or information for it." In reality, the Stripes community is very supportive - have a look at the mailing list and you'll see how friendly and responsive people are. In fact, some have said on the #stripes IRC channel that they have had better response for Hibernate-related questions than on #hibernate itself!
Give Stripes a good, serious look instead of dismissing it because of misconceptions.
Stripes is a great framework. We converted a major project from a home grown framework to stripes and it took less than one week.
The book referenced above is a great resources, as is the mailing list.
There's also an active irc channel #stripes on freenode.
It's a very powerful framework that doesn't get in your way.
We considered it when we were looking at open source frameworks. But we saw the same thing your did that there really just isn't much support or information for it. You should always weight the community support factor surrounding open source projects before picking one. (which is what you are doing here)

Categories