Menu

Class Viewer for Java / Class Viewer Blog: Recent posts

Stats for 2017

For 2017, relying on SourceForge stats, for Class Viewer.

There were: 2160 downloads, from 111 countries
Top 5: US - 430, India - 257, Germany - 128, UK - 69, Russia - 67

85% of downloads were for Windows operating system

Posted by James Harris 2018-01-04 Labels: stats

Planning on new update at some point

Realized am not in a rush to update Class Viewer especially with such a significant recent update, which may sound contrary, but would like to give it time to settle. More than likely most features should work with it anyway, because the app is so close to the language. Is more like a bit of a middle-layer to help visually and with method search primarily.

Good news though is, am most avid user of Class Viewer of which I know, as um, don't get feedback. (Maybe I should work on that? Been telling myself that for over a decade.) But does mean an update will come eventually, though not expecting big changes. There is a certain way has kind of settled after more than a decade which works for me! And I do the work for the app.

Posted by James Harris 2017-11-17 Labels: project

Innovation really?

When put Class Viewer on SourceForge back February 2004 had no clue really what to expect. Had left the software industry in 2002 to focus on my math. Found my own way to count primes, which had not gone well as found myself bogged down in arguments with haters on Usenet, and needed something to feel better about myself. So I went with a tool which had started as practice for Java Certification exam, where not surprisingly had been working on learning Java Reflections. And originally was iterating what I knew was rough code, NOT designed which thought might turn into something where might refactor some day.... read more

Posted by James Harris 2017-08-31 Labels: behind the scenes

Waiting on Java 9 update

Going to do my usual which is wait for an update to Java and then run current Class Viewer with it and see what happens. That is how I found out things needed to change in the past and it works well. This time will include compiling to see if there are any deprecation alerts. My understanding is that JApplet is being deprecated and as Class Viewer is a JApplet that might lead to biggest shift. Though shoudn't change functionality.... read more

Posted by James Harris 2017-07-07 Labels: project

New to Java?

Class Viewer is a lightweight, barebones tool designed to be the bare minimums needed to just do what you need--look up basic Java class information, especially public method info. And I've resisted the impulse to make it more complicated just to do something. But also if you are new to the Java language or just want to refresh on something it has a link to the Oracle Java Tutorial, where here is link: http://docs.oracle.com/javase/tutorial/... read more

Posted by James Harris 2017-06-29 Labels: Help menu

Copying from Results Window

One of the newest things added to Class Viewer is the ability to copy from the Results Window where Class Viewer will notify you when that is done as I don't like it when guessing. Also though the Results Window is free to type in and edit, so you can do some basic things to results before you highlight and copy, for example:

static String valueOf(char)
static String valueOf(Object)
static String valueOf(boolean)... read more

Posted by James Harris 2017-05-21 Labels: feature

Marking an anniversary as 13 years old now

Glad SourceForge keeps the date when a project is registered handy as just looked to be sure and yup, was February 25, 2004 when I registered Class Viewer, so today is an anniversary date.

And there is an update for me to do, preparing for the next Java version, which will finally mean that Class Viewer will no longer be a JApplet, as guess that just didn't work out for the Java language. Is interesting years ago where people thought things might go and I made Class Viewer to be web native from the start. Am still confident of that vision and who knows how that might play out down the line.... read more

Posted by James Harris 2017-02-25 Labels: anniversary

Quantifying the download burst

Had a HUGE burst of downloads which is of course gratifying though will admit is kind of mysterious to me. Primarily from the US with the OS listed as Other by SourceForge stats will admit I've thought were Linux downloads? But yeah need to work on getting feedback if want to be sure with such things. But am posting not for that but to quantify the difference.

So looking at SourceForge stats for the project for the year looks like downloads topped out at 1760 for November, where a more typical number was 354 for month of July and 298 for September. Downloads for year so far are 5555 with 3520 from US. Next closest was Germany with 338 downloads for the year so far. But total number of countries listed by SourceForge stats was 109.... read more

Posted by James Harris 2016-12-06 Labels: stats

Lots of recent downloads!

Thank you to all the people who have been downloading Class Viewer recently! These are the best download numbers EVER. And by far as well as for most of the app's history was around 10 downloads per day but now am looking at much higher. And yup that has me thinking even more about support and continuing development as it should.

Feel free to give feedback. Am learning that process of getting it but will focus more with these kinds of numbers as now see it as fun. It's an evolved viewpoint should admit? ... read more

Posted by James Harris 2016-11-23

Thoughts on continuing development

To me I got lucky because I see Class Viewer as doing things close to the Java language itself, which I knew I wanted while developing, and in my opinion is for the most part a GUI on Java Reflections, so not much development needed. And for me Class Viewer is indispensable for rapid development, which now is usually on the app itself.

And being so close to the language, Class Viewer in a sense dynamically adjusts much with the Java language itself, so maintaining it is rather easy. ... read more

Posted by James Harris 2016-10-10 Labels: development

Needing changes for upcoming JDK 9

Thankfully noticed that JDK 9 is on the horizon as Java Platform posted on G+, and looks like will force some changes to Class Viewer which will be version 7, and will release a bit after the new JDK arrives, as will test with it. Why the jump in versions? I only do prime number version numbers. So Class Viewer 5 is followed by Class Viewer 7. And Class Viewer will no longer be a JApplet as Applet is being deprecated. Am thinking will be a Panel or a Container. Will figure out when begin development. That looks like biggest change as now starting to consider... read more

Posted by James Harris 2016-09-07 Labels: JDK 9

Rapid development is more fun

Found myself thinking about a software product which has passed its 12th year but is now getting more average daily downloads than ever, which has already been downloaded from 99 countries according to SourceForge stats this year, and decided was a better way to consider Class Viewer,

Perspective helps and am glad to still be developing on the project and still using it, which is how latest iteration which I call Class Viewer 5.2 happened as was using for something and realized wanted option to make fonts bigger, but how? I think I searched on JApplet with Class Viewer as is one, but for this blog post now a bit over 30 days later from release, realized can use ClassViewer as the class as it IS a JApplet. And then searched in the search box on: font... read more

Posted by James Harris 2016-09-04 Labels: project development

Modular computing is more fun to me

Modular computing to me is when you have a LOT of functionality that can be had easily, so to me is modular that Class Viewer can call a web browser or call a text editor. In each case is possible because both allow it, and I think programs that are modular in that they work well with other programs should be cheered.

For instance I default to gedit as the text editor because it takes a line number when called, which means Class Viewer can do the work of looking into a Java file, find where a method is, and then just call gedit or some other text editor which takes that argument to the method. That is fun to me.... read more

Posted by James Harris 2016-06-07 Labels: modular computing

Calling other programs

From the beginning back in 2004 the Class Viewer application has called the browser as that was intrinsic to what I wanted early, as back then was tired of going through JavaDocs manually. And today yeah plenty of Java development environments make it easy to get them, but my way is still just as useful. So yeah Class Viewer lets you quickly get to JavaDocs but later I wanted same thing for getting into Java programs. And found was easy. The code for calling the browser is:... read more

Posted by James Harris 2016-06-01 Labels: code

Shifts with Java language automatically

As a tool Class Viewer for Java is primarily a GUI on the Java Class class itself. Developed initially to help in studying for the Java Certifications exam, the full program ClassViewer.java was built to GUI the original ClassInfo.java which manages data.

Posted by James Harris 2016-05-28

Few changes over more than a decade

For me as a single developer on the project, which is admittedly a very small project, there have been remarkably few changes to Class Viewer since 2004. As GUI is the same, while menu has changed a bit, mainly with introduction of Command option. Also originally for some reason I called the XML configuration file packagedirectory.xml but now is more appropriately ClassViewerConfig.xml, and it has some additional internally handling a few new features.... read more

Posted by James Harris 2016-05-23

Like to be Meta Innovator

Of course innovation is all the rage as a buzzword, but today can look at an application I wrote over a decade ago which still to me pushes limits by breaking conventions on menu, minimalist to a level can be used in over 100 countries leveraging Java's international reality properly, and it calls other apps and uses the web naturally.

And will admit I scare myself with getting trapped into some less advanced paradigm than the mentality, my own, that produced just that one product. I reference it constantly as that works to make my point in a way easily checkable. So am looking around constantly for companies that don't just talk innovation but live it with products or services that can as easily trot out their list that defies convention as I can, with a product I wrote over a decade ago.... read more

Posted by James Harris 2016-05-14 Labels: meta

My functional view on code

Will readily admit my Class Viewer wasn't designed as started out as test programs to study for the Java Certification exam. And after writing a lot of what is now ClassInfo.java which is STILL there by the way, I wrote a GUI program to manage it, which I called ClassViewer.java which means yeah, you can run ClassInfo.java too, by itself.

However, in the years since, have considered refactoring, and making code prettier or following more rules with the coding but have in places perfect code as to function. That is, following various established coding practices would have built different if designed. But instead just written perfectly the code will operate without error, so am like, I'm not adding things just to fit some coding rules or make it look pretty. So left it that way.

Posted by James Harris 2016-05-08 Labels: design coding practice

Like apps calling apps

Maybe should take opportunity to talk more about philosophy of Class Viewer which is minimalist in many ways from GUI design to relying on something that actually makes coding easier, which is the app calling other apps. Where from the start the other very important app was the web browser.

And you can choose your preferred browser as that is set in ClassViewerConfig.xml as I think is easiest way to handle configuration--just put in an XML file. Which I did over a decade ago should add.... read more

Posted by James Harris 2016-05-05 Labels: modular

Thoughts on blogging impact

Finally started using blog here on SourceForge where had been talking about project on a blog on Blogger for years. But made a HUGE difference with downloads, which would briefly soar when I made posts here that I guess resonated. I'd never seen that before will admit. So occurs to me that raises visibility somehow, and also helps people make a decision to download which I think is great.

Also revealed to me, maybe there is a bigger market for my Class Viwer than I ever realized and possibily should look at working at figuring out better what that might be which could benefit me and potential users. But not sure how to proceed.... read more

Posted by James Harris 2016-04-27

Value in adding your packages in ClassViewerConfig.xml

Class Viewer comes with a list of packages, which it stores in ClassViewerConfix.xml which is the configuration file. For full functionality, you'll need to add ones you use, where I don't know how big of an issue that is. Hadn't really thought about it until typing this post. But in any event, here are the defaults for Javase:

~~~~
<names>
<pkg>java.lang.reflect</pkg>
<pkg>java.lang</pkg>
<pkg>java.math</pkg>
<pkg>java.io</pkg>
<pkg>java.util.regex</pkg>
<pkg>java.util</pkg>
<pkg>java.awt.event</pkg>
<pkg>java.awt.datatransfer</pkg>
<pkg>java.awt.im</pkg>
<pkg>java.awt</pkg>
<pkg>java.net</pkg>
<pkg>java.applet</pkg>
<pkg>org.xml.sax.helpers</pkg>
<pkg>org.xml.sax</pkg>
<pkg>java.security</pkg>
<pkg></pkg>
<pkg></pkg>
<pkg></pkg>
</names>
~~~~... read more

Posted by James Harris 2016-04-19 Labels: configuration search quirks

Some thoughts on Class Viewer error handling

With an application this mature reality is I could have coded out any view on the command line of errors that Class Viewer encounters but you can see a big splash if, for instance, Class Viewer can't open the browser or something which goes back to me being bothered when I'd be looking at code which would just do nothing, while crashing mightily inside. So it's just a personal preference. To me my job is to make sure that if used correctly with everything setup correctly, there should be no errors. Perfect code.... read more

Posted by James Harris 2016-04-18 Labels: design quirk

Light weight, command line focused

Despite having been originally created over a decade ago Class Viewer remains relevant as in my opinion it is primarly a GUI on the Java Reflections class, where I pull off package names, so you can do things like just type String for the String class versus java.lang.String which means it's easier to navigate the Java language.

And is extremely lightweight without a ton of code which also means as a single developer of the project I can easily maintain and update as needed but really only necessary if changes are made to the Java language or how things are presented like BIGGEST thing recently was change in JavaDocs weblink format with Java 8.... read more

Posted by James Harris 2016-04-17 Labels: descriptive

Checked latest Java version 8 update 77

Checked Class Viewer with Java 8 update 77. All functionality seems present and working as expected.

Posted by James Harris 2016-03-28 Labels: update check

Configuration file is XML

When created Class Viewer over a decade ago, really wanted configuration by XML file, and now that file is called ClassViewerConfig.xml where I didn't call it that at start. Changed to it recently, and I think is much better with that explanative name.

It is easily edited by text editor. So you can just open with a text editor and make changes.

Here is a bit from mine:

~~~~
<local>
<browserloc>C:\Program Files\Mozilla Firefox\firefox.exe</browserloc>
<editor>"C:\Program Files\gedit\bin\gedit.exe"</editor>
<acceptslinenumber>Yes</acceptslinenumber>
<parameter>+</parameter>
</local>
~~~~... read more

Posted by James Harris 2016-03-15 Labels: configuration file
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.