Category Archives: Tools

Evolus Pencil – wireframes and prototyping

During my consequential research and exploration of UML and prototyping tools for Linux I found something I really enjoy way too much than expected. It's the Pencil Project.

Pencil is an open source tool based on Firefox for drawing UI prototypes, schemes, wireframes. It has a pretty interface which is usable and fast, it could be ran over Firefox or as a stand-alone application in most of the operating systems around. I had installed it on my Fedora station and now I enjoy drawing schemes for my clients since then. 

The Pencil project offers some standard shapes for drawing, web components (h1 to h6, lorem ipsum, panels...), UI components from Forms (buttons, labels) and other popular things like tables that you might need to show the basic structure. Using a Windows Form/Frame as a parent component it looks exactly like a standard Swing or Forms application. Also, it has alignment of components by horizontal and vertical coordinates related to previously positioned elements. And so on. It's mandatory to try and use in the future. 

Other more complex charts could be painted as well - it's up to you. Digg DZone Facebook Google Google Reader Magnolia reddit SlashDot Technorati

Export PDF with handouts in Impress, Linux

I need to print an Impress presentations as PDF with handouts - 3 slides per page in the left column and empty rows for taking notes on the right. 

The File -> Export to PDF option doesn't allow chaining more than 1 slide to a page. On the other hand, printing allows dividing a page to a few handouts, but no PDF export could be done. The only option in-between is priting as file to a .PS format which is still a file, but not that portable and popular (and flexible) as PDF.

So, we need to create a virtual printer.

  1. Install cups-pdf - it's freely available in all repos for Debian, Ubuntu, Fedora etc.
  2. Add a default printer for cups-pdf (it got installed automatically here)
  3. Open the Impress presentation
  4. Go to File -> Print
  5. Select the Print Content -> Handouts (with 3 or 6 for a page) and then find your new virtual printer.
  6. PDF is exported (hint: by default is sent to the desktop). Digg DZone Facebook Google Google Reader Magnolia reddit SlashDot Technorati

Regular expression tester


If you need to create a complex regular expression, the best you might do is to debug it realtime onchange. One of the best free online tools for that is the REGex TESTER.

Via Regex Tester you might type a sample text and regular expression and dynamically see the matched substrings in few regex pattern types. Some flags are modifiable as well. At the bottom of the page you could also find some of the most popular regex conditions - email pattern, IP pattern etc. to be used for validation purposes. Digg DZone Facebook Google Google Reader Magnolia reddit SlashDot Technorati

Oracle SQL Developer


If you use Oracle for your projects, you are probably using your custom made interface for database connectivity, SQL*PLUS (integrated in the Oracle package) or some external 3rd party tool.

My choice on DB access when Oracle is the choice is Oracle SQL Developer.

Some features of this tool (from Oracle website):

1. Create Connections
2. Browse Objects
3. Create Objects
4. Modify Objects
5. Query and Update Data
6. Export Data and DDL and Import Data
7. Schema Copy and Compare
8. Process Commands
9. Edit PL/SQL
10. Run and Debug PL/SQL
11. Run and Create Reports
12. PL/SQL Unit Testing
13. Data Modeler Viewer
14. Migrate from Third Party Databases
15. Version Files
16. Review the Robust IDE

One of my favourite functions is trigger on sequence creation. When we need auto increment facility for a table, we usually pass through the following steps:

  1. Write the table code
  2. Write the sequence code
  3. Write the trigger code, connecting sequence to a 'before insert' action on a table.

Using Oracle SQL Developer, we could do:

Create a table with few clicks (defining the appropriate fields)

Create a sequence with the parameters in predefined form from the tool.

Then right-click on the table and create a Trigger -> PK from sequence which would create a trigger, catching a sequence and auto-incrementing an ID key of our own choice.

Great job that decreases the code writing when not necessary. Digg DZone Facebook Google Google Reader Magnolia reddit SlashDot Technorati