<?xml version='1.0' encoding='UTF-8'?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://blog.cpjobling.net</id>
  <title>Fresh and Crispy</title>
  <updated>2026-09-29T09:41:28.200420+00:00</updated>
  <link href="https://blog.cpjobling.net/feeds/software-development.atom.xml" rel="self"/>
  <link href="https://blog.cpjobling.net" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Posts in category "Software Development" from Fresh and Crispy</subtitle>
  <entry>
    <id>https://blog.cpjobling.net/2004/06/30/java-technology-concept-map.html</id>
    <title>Java Technology Concept Map</title>
    <updated>2004-06-30T17:38:00+00:00</updated>
    <content type="html">&lt;p&gt;This interactive diagram to the Java universe is a flash application that links
to the documentation. I thank Malcolm Davies on
&lt;a href="http://weblogs.java.net/pub/wlg/1570" rel="noopener noreferrer" target="_blank"&gt;Java.Net&lt;/a&gt; for drawing our attention to
this excellent resource.&lt;br /&gt;
In a nutshell:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;"&lt;strong&gt;Developers&lt;/strong&gt; learn and use &lt;em&gt;Java&lt;/em&gt; to create and run &lt;em&gt;Programs&lt;/em&gt; that make
&lt;em&gt;Devices&lt;/em&gt; and the &lt;em&gt;Internet&lt;/em&gt; useful for &lt;strong&gt;People&lt;/strong&gt;."&lt;/p&gt;
&lt;/blockquote&gt;</content>
    <link href="https://blog.cpjobling.net/2004/06/30/java-technology-concept-map.html"/>
    <category term="Software Development"/>
    <category term="java"/>
    <category term="concept map"/>
    <published>2004-06-30T17:38:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/06/25/umlet-another-free-uml-tool.html</id>
    <title>UMLet - Another Free UML Tool</title>
    <updated>2004-06-25T15:42:00+00:00</updated>
    <content type="html">&lt;p&gt;Martin Fowler mentioned
&lt;a href="http://qse.ifs.tuwien.ac.at/~auer/umlet/index.html" rel="noopener noreferrer" target="_blank"&gt;UMLet&lt;/a&gt; in his recent
article on
&lt;a href="http://martinfowler.com/bliki/UmlSketchingTools.html" rel="noopener noreferrer" target="_blank"&gt;UmlSketchingTools&lt;/a&gt; which
&lt;a href="umlsketchingtools.html"&gt;I blogged about&lt;/a&gt; earlier this week. A paper in which
the authors (Auer &lt;em&gt;et al&lt;/em&gt;, 2003) describe the ideas behind UMLet is very
insightful and pretty much echoes my own experiences of over-blown UML tools in
the teaching domain (and I’ve tried ArgoUML, Poseidon CE, Together and Rational
Rose with variable — but mostly limited — success over the last three or four
years).&lt;/p&gt;
&lt;p&gt;I have to say that, although it currently only supports class, object and
use-case diagrams, UMLet looks very promising and may well prove to be a winner
in next year’s Software Engineering courses. Better yet, UMLet can be used as an
Eclipse plugin!&lt;/p&gt;
&lt;h2 id="reference"&gt;Reference&lt;/h2&gt;
&lt;p&gt;M. Auer, T. Schurtschenthaler, and S. Biffl (Vienna University of
Technology), 2003.
&lt;a href="http://csdl.computer.org/comp/proceedings/euromicro/2003/1996/00/19960267abs.htm" rel="noopener noreferrer" target="_blank"&gt;A Flyweight UML Modeling Tool for Software Development in Heterogeneous Environments”&lt;/a&gt;,
&lt;strong&gt;29th Euromicro Conference (EUROMICRO’03)&lt;/strong&gt;, Sept. 01–06. Balek-Antayla,
Turkey. Conference Proceedings Published by IEEE.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/06/25/umlet-another-free-uml-tool.html"/>
    <category term="Software Development"/>
    <category term="UML"/>
    <category term="tools"/>
    <published>2004-06-25T15:42:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/06/25/python-development-with-eclipse-and-ant.html</id>
    <title>Python development with Eclipse and Ant</title>
    <updated>2004-06-25T15:16:00+00:00</updated>
    <content type="html">&lt;p&gt;Excellent article by Ron Smith on
&lt;a href="http://www-136.ibm.com/developerworks/" rel="noopener noreferrer" target="_blank"&gt;IBM developerWorks&lt;/a&gt; on how to set up
and use Python with Eclipse and Ant. Will definitely be using this to set up
Eclipse 3.0 with Python support when the final version is released.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/06/25/python-development-with-eclipse-and-ant.html"/>
    <category term="Software Development"/>
    <category term="python"/>
    <category term="eclipse"/>
    <category term="ant"/>
    <published>2004-06-25T15:16:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/06/24/new-ant-1-6-features-for-big-projects.html</id>
    <title>New Ant 1.6 Features for Big Projects</title>
    <updated>2004-06-24T17:07:00+00:00</updated>
    <content type="html">&lt;p&gt;A new tutorial article by &lt;em&gt;Stefan Bodewig&lt;/em&gt; on the
&lt;a href="http://otn.oracle.com/" rel="noopener noreferrer" target="_blank"&gt;OracleTM Technology Network&lt;/a&gt; has been brought to my
attention by a news article on
&lt;a href="http://www.theserverside.com/news/thread.tss?thread_id=26797" rel="noopener noreferrer" target="_blank"&gt;TSS&lt;/a&gt; (thanks
Sudhakar Ramakrishan). Describes the new , and tasks that should make ant even
better! Will print and read the detail later, but I can’t wait to try some of
these out on the EG-140 build (which needs all kinds of scripting tricks to
work).&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/06/24/new-ant-1-6-features-for-big-projects.html"/>
    <category term="Software Development"/>
    <category term="ant"/>
    <category term="java"/>
    <category term="build tools"/>
    <published>2004-06-24T17:07:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/06/16/umlsketchingtools.html</id>
    <title>UmlSketchingTools</title>
    <updated>2004-06-16T22:56:00+00:00</updated>
    <content type="html">&lt;p&gt;Another approach to UML diagramming. This time publicised in Martin Fowler’s
Blicki:
&lt;a href="http://martinfowler.com/bliki/UmlSketchingTools.html" rel="noopener noreferrer" target="_blank"&gt;MF Bliki: UmlSketchingTools&lt;/a&gt;.
&lt;a href="http://www.spinellis.gr/sw/umlgraph/" rel="noopener noreferrer" target="_blank"&gt;UMLGraph&lt;/a&gt; uses a mixture of JavaDoc tags
and &lt;em&gt;pic&lt;/em&gt; macros to do the hard work. Dr Spinelis argues for his declarative
approach in “On the Declarative Specification of Models, &lt;em&gt;IEEE Software&lt;/em&gt;,
20(2):94-96, March/April 2003 which is on-line in PDF format at
&lt;a href="http://www.spinellis.gr/pubs/jrnl/2003-IEEESW-umlgraph/html/article.html" rel="noopener noreferrer" target="_blank"&gt;http://www.spinellis.gr/pubs/jrnl/2003-IEEESW-umlgraph/html/article.html&lt;/a&gt;.
Worth a look I think — as is the author’s (Domidis Spinellis) book
&lt;a href="http://www.spinellis.gr/codereading/" rel="noopener noreferrer" target="_blank"&gt;Code Reading&lt;/a&gt;.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/06/16/umlsketchingtools.html"/>
    <category term="Software Development"/>
    <category term="UML"/>
    <category term="tools"/>
    <published>2004-06-16T22:56:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/06/15/visual-thought.html</id>
    <title>Visual Thought</title>
    <updated>2004-06-15T10:14:00+00:00</updated>
    <content type="html">&lt;p&gt;Jeremy Rayner’s
&lt;a href="http://web1.2020media.com/j/jez/javanicuscom/blog2/items/135-index.html" rel="noopener noreferrer" target="_blank"&gt;June 15 blog entry&lt;/a&gt;
directed me to another free drawing tool for UML diagrams. Thanks for the link!&lt;/p&gt;
&lt;p&gt;I mentioned &lt;a href="http://crispyj2.blogspot.com/2004/06/violet-uml-tool.html" rel="noopener noreferrer" target="_blank"&gt;violet&lt;/a&gt;
a couple of days ago. It is really simple, unfortunately it doesn’t have the
ability to move classes around once positioned. This makes it a a bit hard to
use. It is open source so that could be fixed of course!&lt;/p&gt;
&lt;p&gt;Visual Thought is a drawing tool so it has the same advantages as Visio in that
it’s not designed for &lt;a href="http://www.omg.org/mda/" rel="noopener noreferrer" target="_blank"&gt;MDA&lt;/a&gt; or for code generation, so
you can happily use it for &lt;a href="http://www.agilemodeling.com/" rel="noopener noreferrer" target="_blank"&gt;agile modelling&lt;/a&gt;. As
I have some modeling to do over the summer as I rewrite my &lt;em&gt;Client-Server
Programming in Java Module&lt;/em&gt;, I’ll let you know how it goes!&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/06/15/visual-thought.html"/>
    <category term="Software Development"/>
    <category term="UML"/>
    <category term="tools"/>
    <published>2004-06-15T10:14:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/06/02/jmock-a-lightweight-mock-object-library-for-java.html</id>
    <title>jMock - A Lightweight Mock Object Library for Java</title>
    <updated>2004-06-02T09:14:00+00:00</updated>
    <content type="html">&lt;p&gt;Version 1.0.0
&lt;a href="http://www.jmock.org/" rel="noopener noreferrer" target="_blank"&gt;jMock – A Lightweight Mock Object Library for Java&lt;/a&gt; has
been released. jMock is a framework that uses reflection (I assume) to
programmatically define mock objects for unit testing. Tutorials and source code
ready for downloading.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/06/02/jmock-a-lightweight-mock-object-library-for-java.html"/>
    <category term="Software Development"/>
    <category term="Java"/>
    <category term="jMock"/>
    <published>2004-06-02T09:14:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/06/02/the-ted-neward-challenge-aop-without-the-buzzwords.html</id>
    <title>The Ted Neward Challenge (AOP without the buzzwords)</title>
    <updated>2004-06-02T09:07:00+00:00</updated>
    <content type="html">&lt;p&gt;Adrian Colyer has tried to describe AOP without using the buzzwords. An attempt
to answer a challenge thrown down at the last TSS symposium in
&lt;a href="http://jroller.com/page/colyer/20040531#the_ted_neward_challenge_aop" rel="noopener noreferrer" target="_blank"&gt;The Aspects Blog&lt;/a&gt;.
It boils down to DRY (don’t repeat yourself).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;So what we’ve really got in any non-trivial software application is not the
ideal 1-to-1 mapping between concept and implementation, but an n:m mapping.
No wonder software gets so hard to maintain, and so hard to understand, and so
complex. And &lt;em&gt;it’s not your fault&lt;/em&gt;. The tools that object-oriented languages
give us don’t enable the clean mapping of every design concept into a single
implementation construct … and consequently neither do they allow each
implementation construct to map cleanly onto a single design concept. This is
the problem that aspect-oriented programming attempts to help us solve. It’s
about getting as close to a 1-to-1 mapping as we can. AOP addresses the
problem by introducing a new construct known as an aspect that is able to
capture in one place the implementation of design requirements, such as the
view-notification requirement [all views have to be notified if the model &amp;gt; &amp;gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;changes] in MVC, which OOP cannot.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;</content>
    <link href="https://blog.cpjobling.net/2004/06/02/the-ted-neward-challenge-aop-without-the-buzzwords.html"/>
    <category term="Software Development"/>
    <category term="AOP"/>
    <published>2004-06-02T09:07:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/05/27/not-the-next-big-thing-sss-small-simple-safe-reinvents-bluej-functionality.html</id>
    <title>Not the next big thing! SSS (Small, Simple, Safe) reinvents BlueJ functionality</title>
    <updated>2004-05-27T16:25:00+00:00</updated>
    <content type="html">&lt;p&gt;Daily trawl through the java.blogs feeds picked up a reference to
&lt;a href="http://www.onjava.com/pub/a/onjava/2004/05/26/sss.html" rel="noopener noreferrer" target="_blank"&gt;ONJava.com: SSS (Small, Simple, Safe) [May. 26, 2004]&lt;/a&gt;.
SSS is apparently a simple tool that allows you to instantiate and play with
Java objects. It is apparently used and useful in teaching. I simply had to make
a comment to the effect that BlueJ has had this feature &lt;em&gt;for ever&lt;/em&gt;! Here’s my
response in full:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;BlueJ is a simple Java IDE (avalable from www.bluej.org) which also has this
sort of behaviour. You can instantiate an object of any class on the classpath
by providing the fully qualified name and then selecting any of the class’s
constructors. Once the object has been instantiated and a small icon (sort of
like a UML object diagram) appears. You can then right-click on the “object”
to call any of the object’s methods. Because BlueJ is an IDE and debugger it
has privileged access to the JVM, which allows you to also inspect the object
to see all its private state.&lt;/p&gt;
&lt;p&gt;BlueJ has built up quite a following in the educational arena just lately and
there are several “CS101″ text books using it (but none from O’Reilly). See
the web site quoted above for more info and access to the lively discussion
lists.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;It’ll be interesting to see if there is any feedback!&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/05/27/not-the-next-big-thing-sss-small-simple-safe-reinvents-bluej-functionality.html"/>
    <category term="Software Development"/>
    <category term="Java"/>
    <category term="Reading"/>
    <category term="BlueJ"/>
    <published>2004-05-27T16:25:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/05/24/everybodys-blogging-about-eclipse-m9.html</id>
    <title>Everybody's Blogging about Eclipse M9</title>
    <updated>2004-05-24T19:07:00+00:00</updated>
    <content type="html">&lt;p&gt;Lot of traffic on the blogosphere about the new Milestone 9 release of Eclipse.
Here’s a memo to self to check this out later.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/05/24/everybodys-blogging-about-eclipse-m9.html"/>
    <category term="Software Development"/>
    <category term="Eclipse"/>
    <category term="IDE"/>
    <category term="Reminder"/>
    <published>2004-05-24T19:07:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/05/24/keep-it-dry-keep-it-shy-and-tell-the-other-guy.html</id>
    <title>Keep it DRY, keep it shy and tell the other guy</title>
    <updated>2004-05-24T17:07:00+00:00</updated>
    <content type="html">&lt;p&gt;Andy Hunt and Dave Thomas
&lt;a href="http://www.PragmaticProgrammer.com" rel="noopener noreferrer" target="_blank"&gt;The Pragmatic Programmers&lt;/a&gt; have published a
brilliant article with the above title in Andy Hunt and Dave Thomas, “OO in one
sentence: Keep it DRY, Shy and Tell the Other guy”, &lt;em&gt;IEEE Software&lt;/em&gt;, Vol.21 No.
3, pp 101–103, May/June 2004. In outline their main points are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;DRY (don’t repeat yourself) states:&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Every piece of knowledge must have a single, unambiguous, and authoritative
representation representation within a system.&lt;/em&gt; (Hunt and Thomas,
&lt;a href="http://www.amazon.co.uk/exec/obidos/ASIN/020161622X/ref=sr_aps_books_1_1/202-5418779-1971851" rel="noopener noreferrer" target="_blank"&gt;The Pragmatic Programmer&lt;/a&gt;,
Addison Wesley, 2000.)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Non-authoritative information (e.g. for EJB all the various interfaces and
configuration files) should ideally be generated from the authoritative sources.
The DRY principle also applies to build process, code reviews, and
documentation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Shy means code should not reveal information about itself unless really
  necessary. There are four axes of undesirable coupling that violate the Shy
  principle:&lt;/li&gt;
&lt;li&gt;&lt;em&gt;static coupling&lt;/em&gt; occurs when a program module needs another to compile. Some
  coupling is often necessary, but it should be minimized. Inheritance is a
  particularly nasty source of unanticipated coupling and delegation (&lt;em&gt;uses a&lt;/em&gt;,
  &lt;em&gt;has a&lt;/em&gt;) is often preferable to &lt;em&gt;is a&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;dynamic coupling&lt;/em&gt; occurs when a class needs the services of another class. A
  good example of what can go wrong is code like
  &lt;code&gt;auction.getLot().getHighestBid().getBidder().getPerson()&lt;/code&gt; (called a &lt;em&gt;train
  wreck&lt;/em&gt; that appears in one of my lab exercises. The client (&lt;code&gt;auction&lt;/code&gt;) needs
  to know too much about its collaborating classes and is therefore fragile.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Domain coupling&lt;/em&gt; occurs when too much information about business logic
  appears in code. It can often be reduced by the judicious use of meta data
  that is kept in properties or databases.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Temporal coupling&lt;/em&gt; occurs when code execution is dependent on a particular
  execution order. Code that may one day be expected to run concurrently should
  be designed to be concurrent.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A corollary of shy code is that code should not be nosy (could be paraphrased as
&lt;em&gt;mind your own business&lt;/em&gt;!&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tell the Other Guy [or
  &lt;a href="http://www.pragmaticprogrammer.com/articles/jan_03_enbug.pdf" rel="noopener noreferrer" target="_blank"&gt;Tell, Don’t Ask&lt;/a&gt;
  (&lt;em&gt;IEEE Software&lt;/em&gt;, Jan/Feb 2003)]. Don’t think of methods as function calls
  rather as sending a message. Make the other class responsible for providing a
  service, don’t expect a data return!&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Great stuff as usual and well worth quoting in all my software engineering
courses!&lt;/p&gt;
&lt;p&gt;While on this note it’s probably worth noting that the Pragmatic Programmers are
also bloggers: Andy Hunt blogs in &lt;a href="http://www.toolshed.com/blog" rel="noopener noreferrer" target="_blank"&gt;Andy’s Weblog&lt;/a&gt;
and Dave Thomas as &lt;a href="http://pragprog.com/pragdave" rel="noopener noreferrer" target="_blank"&gt;PragDave&lt;/a&gt;. Both are on my Blog
roll at &lt;a href="www.bloglines.com"&gt;Bloglines.com&lt;/a&gt;.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/05/24/keep-it-dry-keep-it-shy-and-tell-the-other-guy.html"/>
    <category term="Software Development"/>
    <category term="Programming"/>
    <category term="Reading"/>
    <published>2004-05-24T17:07:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/05/21/jam-tomorrow.html</id>
    <title>Jam Tomorrow</title>
    <updated>2004-05-21T15:20:00+00:00</updated>
    <content type="html">&lt;p&gt;Something to look into:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;"JAM leverages the new import and target override features of Ant 1.6 to
create a reusable, consistent Java build framework. JAM modules support JBoss,
XDoclet, JUnit, Cactus, Struts, Castor, Resin and MDA/UML code generation.
Maven’s POM and repository features are supported via a Maven-to-Ant bridge."&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Thanks to
&lt;a href="http://www.theserverside.com/news/thread.tss?thread_id=26054" rel="noopener noreferrer" target="_blank"&gt;New Build Tool: J2EE + Ant = JAM&lt;/a&gt;
on theServerSide.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/05/21/jam-tomorrow.html"/>
    <category term="Software Development"/>
    <category term="Reading"/>
    <published>2004-05-21T15:20:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/05/21/faking-the-pass-by-reference-semantics.html</id>
    <title>Faking the pass-by-reference semantics</title>
    <updated>2004-05-21T12:02:00+00:00</updated>
    <content type="html">&lt;p&gt;Nice blog article about Java’s
&lt;a href="http://radio.javaranch.com/channel/val/2004/05/21/1085125887000.html" rel="noopener noreferrer" target="_blank"&gt;pass-by-reference semantics&lt;/a&gt;.
I still think Kathy Sierra’s Campfire Story
&lt;a href="http://www.javaranch.com/campfire/StoryPassBy.jsp" rel="noopener noreferrer" target="_blank"&gt;Pass-by-Value Please&lt;/a&gt; is a
good an explanation of this difficult concept as you’ll find. And it’s nice and
memorable. Kathy and Bert Bates make good use of the analogy in
&lt;a href="http://www.amazon.co.uk/exec/obidos/ASIN/0596004656/qid=1085140914/sr=1-2/ref=sr_1_2_2/202-6150277-0851808" rel="noopener noreferrer" target="_blank"&gt;Head First Java&lt;/a&gt;
too.&lt;/p&gt;
&lt;p&gt;Thanks to Val’s Blog.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/05/21/faking-the-pass-by-reference-semantics.html"/>
    <category term="Software Development"/>
    <category term="Reading"/>
    <category term="Java"/>
    <published>2004-05-21T12:02:00+00:00</published>
  </entry>
  <entry>
    <id>https://blog.cpjobling.net/2004/05/20/using-velocity-with-jython.html</id>
    <title>Using Velocity with Jython</title>
    <updated>2004-05-20T12:41:00+00:00</updated>
    <content type="html">&lt;p&gt;I need to develop a web application to allow student upload of Java programs for
testing. A Jython servlet with some form of template engine for presentation may
be part of the solution (full framework J2EE application seems overkill!). I
came across several interesting articles after a simple Google search for
&lt;a href="http://www.google.co.uk/search?sourceid=navclient&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8&amp;amp;q=velocity+jython" rel="noopener noreferrer" target="_blank"&gt;Velocity and Jython&lt;/a&gt;.
This one is definitely worth another look later:
&lt;a href="http://stefano.campanini.info/docs/Pythlet/Pythlet-using-jython.html" rel="noopener noreferrer" target="_blank"&gt;Pythlet&lt;/a&gt;.&lt;/p&gt;</content>
    <link href="https://blog.cpjobling.net/2004/05/20/using-velocity-with-jython.html"/>
    <category term="Software Development"/>
    <category term="Jython"/>
    <category term="Velocity"/>
    <category term="Programming"/>
    <published>2004-05-20T12:41:00+00:00</published>
  </entry>
</feed>
