December 28, 2011
Germán Arduino
Smalltalk: Links, News and Resources


Angel López published two very interesting and complete
articles with links, news and resources about our beloved
The links are:
Article 1
Enjoy!
Pic Info:
http://www.flickr.com/photos/emaringolo/187719974/sizes/m/in/photostream / License
by Germán Arduino (noreply@blogger.com) at December 28, 2011 08:17 PM
December 23, 2011
Germán Arduino
PasswordsPro 3 released!


After months of design and development of new ideas and tons of hours of testing, finally PasswordsPro 3 is ready to be downloaded!
All the current customers that want to migrate to the new version only must drop us a mail and we will send the new license for the version 3.
Several friends helped me in this process with ideas, suggestions, really thanks you very much to all them, and let me give a very very special thankful to my friend Claudio Bianchi, owner of FreeSharewareDepot by the invaluable help I received from him, with ideas and their clear vision about the shareware market. Thanks you Claudio!
PasswordsPro is a passwords and notes manager that permits to store in a single file lots of passwords, userids, notes and so, having to remember only one password that protect the whole file.
by Germán Arduino (noreply@blogger.com) at December 23, 2011 03:53 PM
November 14, 2011
Germán Arduino
Zinc HTTP Components


From the Zinc page:
Zinc HTTP Components is an open-source Smalltalk framework to deal with the HTTP networking protocol. This is a new project (started September 1st 2010) that is currently under heavy development. Our long term goals are very ambitious: we want to reach the level of functionality, scope, architectural clarity and maturity of the Apache HTTP Components library. Our short term goal is to offer working HTTP client functionality to support fundamental features in a Smalltalk image. For the time being, Pharo is our reference platform.
Today I read a mail from the author of Zinc, Sven Van Caekenberghe in the Pharo list, about the status of the framework then I had the idea of write this small article highlighting the Zinc features and status.
Next the afore mentioned mail:
Hi,
This is a list of the most important changes to Zn since May 1st 2011:
- added brand new ZnClient to replace all other HTTP clients (who became deprecated)
this is an object to build, execute and process HTTP client requests,
it has a rich protocol to construct requests and to access responses,
it has various error handling options,
it can reuse an existing connection to a specific host:port,
it can handle sessions, cookies, redirects and authentication,
it has many options (settings) with sensible defaults.
here is the simplest example:
ZnClient new
get: 'http://zn.stfx.eu/zn/numbers.txt'
and here is an example using some features to make a better HTTP request:
ZnClient new
systemPolicy;
accept: ZnMimeType textPlain;
http;
host: 'zn.stfx.eu';
path: 'zn/numbers.txt';
contentReader: [ :entity | entity contents lines collect: [ :each | each asNumber ] ];
ifFail: [ :exception | self inform: 'I am sorry: ', exception printString ];
get
- added support so that HTTPS works out of the box if Zodiac is present.
this should work when Zodiac is loaded and the necessary plugin is present:
ZnClient new
url: 'https://www.google.com/search';
queryAt: 'q' put: 'Pharo Smalltalk';
get
- added a new subclass, ZnManagingMultiThreadedServer, that keeps track of open
worker connections so that they can be properly closed when needed.
to use this server with the Zn Seaside adaptor, you can do this:
ZnZincServerAdaptor new
port: 8080;
serverClass: ZnManagingMultiThreadedServer;
start
- refactored ZnNetworkingUtils, it is now (also) a factory for creating socket streams
- added ZnDispatcherDelegate for straight-forward dispatching to mapped urls (thx Nick Ager)
- cleanup of the cookie handling API
- fixed support for HTTP proxies (thx Alexandre Bergel for reporting)
- localhost URLs are now excluded from being proxied
- working around SocketStream>>#atEnd issues by using #peek
- implemented support for proxies that require authorization
- introduced ZnConnectionTimeout process variable
- added ManagedServers class variable to ZnServer to dispatch the system's
#startUp/#shutDown messages to all server instances that are #register-ed
- implemented client side support for If-Modified-Since and Not Modified
- changed ZnMimePart>>#fieldValueString to return an empty string instead of 'nil'
when the field is empty or absent (Thx Lukas Renggli)
- added support for dealing with certain defaults in ZnUrl
- added code to throw a ZnMissingHost exception when a bogus ZnUrl is used to connect to a HTTP host
- added ZnMimeType wildcard constants #any and #text
- added ZnHttpUnsuccessful and ZnUnexpectedContentType exceptions
- added a nice example to ZnEasy class>>#getPng: (Thx Lukas Renggli)
- added ZnUtils class>>#parseHttpDate: for use in ZnCookie>>#expiresTimeStamp
- added optional delegate #close-ing to ZnServer hierarchy
- added some Pharo 1.2 compatibility (ZnMultiThreadedServer>>#exceptionSet:)
- lots of small fixes, cleanup and improved documentation.
And don't miss the Getting Started guide!
Indeed this is a very good framework, not only by its features, but also for it technical quality and the commitment of the developer, taking care of the support and documentation.
I should reimplement XMLRPC to use Zinc. Hope to have time soon.
Pic Info:
http://www.flickr.com/photos/kodomut/3950770038/ / License
by Germán Arduino (noreply@blogger.com) at November 14, 2011 01:50 AM
November 11, 2011
Germán Arduino
Are you using IdeaSpace?


As a long time Dolphiner is not much time that I'm using IdeaSpace and let me comment that is a really handy and useful tool.
Basically IdeaSpace allows to group in a single window every Dolphin window that you are using in a development session, with exception of the Transcript.
Each window that is added to an IdeaSpace window have its own tab to make easy and homy to switch between one or more class browser's, view composer's, workspaces, package manager, etc.
A sample of one of my current projects, next:
by Germán Arduino (noreply@blogger.com) at November 11, 2011 08:53 PM
November 07, 2011
Germán Arduino
Playing with Visual Works 7.8


Today I downloaded Visual Works 7.8 to evaluate somethings, and I like the new projects splash, a really handy application:
Also, changed the fonts, as the next image show:
One more time, I'm impressed with the load speed of the environment.
by Germán Arduino (noreply@blogger.com) at November 07, 2011 11:42 PM
October 17, 2011
Germán Arduino
Producir con Smalltalk


Una costumbre que tengo es releer con cierta periodicidad cosas que escribí hace tiempo, justamente para verificar el efecto del paso de ese tiempo, es decir, si mantienen cierta vigencia o quedan completamente descolocadas.
Unos pequeños párrafos que escribí cuando empecé a ver las ventajas de Smalltalk, allá por el año 2000 o 2001 si mal no recuerdo son los que transcribo a continuación:
A lo largo de los años he tenido
oportunidad de aprender muchos lenguajes de programación, cada uno pregonando
ser quien iba a revolucionar la productividad y la manera de hacer software, la
"interminable galería de luces de colores" como gusta decir Alejandro Reimondo , de Smalltalking.
Esta incesante aparición de nuevas
tecnologías de desarrollo que tiran por la borda todo lo conocido y obligan a
volver a invertir un montón de tiempo en aprender muchas nuevas inútiles cosas
quitan el foco del productor de software de lo que debería ser su objetivo
principal: Hacer evolucionar las soluciones que desarrolló para adpatarlas a los
cambios en los negocios. Mueven el foco al aprendizaje de nuevas tecnologías,
que ya son viejas antes que uno pueda aprender a usarlas.
Esta situación hace que el software se
vuelva viejo antes de ser siquiera maduro, hace que con el paso del tiempo los
productores de software estemos siempre forzados a migrar a la "nueva
plataforma" casi sin pensar en nuevas funcionalidades de nuestros productos.
Nunca podemos capitalizar lo que tanto trabajo nos dió desarrollar, sino que la
palabra siempre presente es "migración", la cual invariablemente está asociada
con un alto costo en tiempo y dinero, casi nunca recuperables.
Esta situación, conocida como "crisis del
software", detalles más detalles menos, es la que se ha venido dando en los
últimos años en forma alarmante, ya que ni más ni menos, atenta directamente
contra el capital de los productores de software, que es el software que han
producido para resolver necesidades específicas.
Lo que buscamos: Hacer evolucionar esas
soluciones que hemos desarrollado con tanto esfuerzo, que se mantengan vigentes
con el paso del tiempo, que no sea necesario empezar de nuevo cada año sólo para
obtener lo mismo que teníamos, pero con otra presentación.
La respuesta (o al menos, la mejor
respuesta que he visto) a esta situación: Smalltalk. Smalltalk es un ambiente de objetos (que no es lo
mismo que decir que es un lenguaje de programación) desarrollado hace algo así
como 30 años por un equipo patrocinado por Xerox.
¿Qué les parece? ¿Aún tiene vigencia lo aquí descripto?
Un artículo interesante y una lectura completamente recomendable en este mismo sentido es ¿Por qué objetos? que data del Año 2000 también. Las cosas no han cambiado mucho, ¿no?
O si! Tenemos varias nuevas opciones en Smalltalk, cada una con sus ventajas o no, depende de la evaluación y necesidades de cada uno, pero lo cierto es que ahí están y otras, como S8, prontas a llegar!
by Germán Arduino (noreply@blogger.com) at October 17, 2011 09:48 PM
October 07, 2011
Germán Arduino
Para quienes están buscando trabajo


Para quienes están en la búsqueda de un empleo me pareció interesante el sitio, así como algunos de los artículos que incluye, por ejemplo:
Para los que estamos más del lado de los emprendimientos incluye algunas notas interesantes (a raíz de la cual encontré el sitio), como por ejemplo:
Espero les resulte de interés!
Información de la foto:
by Germán Arduino (noreply@blogger.com) at October 07, 2011 10:59 AM
September 23, 2011
Germán Arduino
A new venture!


We are pleased to announce that we have launched a new service for our customers and all those who have needs related to software.
In that sense we have established an affiliation agreement with
RegNow (the
industry leader in providing e-commerce processing services and online credit card processing for vendors and authors of PC and Macintosh software, freeware, shareware, electronic art, shopping cart, ecommerce provider and other data).
We are starting with 2 stores:
SofStore.com and
ArSol.net and we have plans to offer different sort of services:
- Discount coupons
- Software reviews
- Personalized advice to specific needs of buying products
As usual, we will try our best effort, to give our customers the more qualified service.
For any question related with our software stores, please drop us a mail to:
editor at sofstore dot com or
info at arsol dot net
Two editors working on these topics will respond asap to help you.
by Germán Arduino (noreply@blogger.com) at September 23, 2011 09:01 PM
August 28, 2011
Germán Arduino
Notebooks Industria Nacional (Argentina)


Desde siempre vi con admiración la industria de Estados Unidos en lo que hace a producción de hardware. Hace unos cuantos años, con las primeras
Linux Journal que cayeron en mis manos, pude ver la gran cantidad de marcas tanto de servidores, como de equipos de escritorio y notebooks que se producen en el país del norte. Estoy hablando de compañías pequeñas, no de las grandes marcas que todos conocemos.
Con el tiempo, afortunadamente, han ido apareciendo algunas marcas en Argentina, una razón más para no depender de otros, y el objetivo de este artículo es realizar una breve reseña de las portables que podemos encontrar en nuestro país.
Comienzo la lista con
Bangho, ya que fue este el primer equipo de marca nacional que tuve. Fue un equipo que usé durante unos tres años, con muy buen desempeño y ningún tipo de problemas hasta que se quemó el video. Lo compré, como es mi costumbre, sin sistema operativo, y le instalé
Ubuntu (ya no recuerdo que versión) que funcionó perfectamente, con la única excepción de un problema para volver de la hibernación.
Posteriormente tuve (y continúa en uso) una
notebook ARM, fabricada por la empresa
SIASA la cual ha resultado realmente fantástica. Actualmente corre
Ubuntu 11.04 maravillosamente rápido y sin ningún tipo de inconvenientes así como varias máquinas virtuales
VMWare como
Backtrack y otros linuxes dedicados al área de seguridad.
Otra marca nacional que conozco que existe, pero que aún no pude probar, es
BGH, donde se destaca el modelo
TS-450, un equipo equipado con un procesador i5. La marca tiene varias líneas, incluyendo hasta un equipo destinado a las condiciones de trabajo más duras, llamado
Durabook.
También la firma
EXO fabrica sus propias notebooks, destacándose el modelo Smart ST 97 V2, que viene equipado con un procesador i3.
Sin dudas, estas es sólo una rápida reseña de algunos equipos que tengo en mente, pero me interesa poder seguir la serie y hacer un análisis más exhaustivo de diferentes equipos notebooks y netbooks fabricados en Argentina.
Creo que es un hito muy importante producir equipos en Argentina, evitando la importación de productos muchas veces mucho más caros y no necesariamente de mejor calidad. Además, al ser montados localmente, todo lo relacionado con repuestos y reparaciones debería ser sensiblemente más rápido y económico que lo que ocurre con las marcas extranjeras.
La unica gran objeción que puedo hacer es que en casi todos los equipos los fabricantes están incluyendo el sistema operativo propietario por excelencia que se usa por estos lares (Windows) y considero que deberían dar la opción al cliente de adquirir equipos con sistema operativo Linux por ejemplo. No digo que sea con exclusividad (como existen varias marcas en USA que no se entregan con Windows, sino con Linux), pero si que sea una opción.
Información de la foto:
by Germán Arduino (noreply@blogger.com) at August 28, 2011 10:42 PM
ESUG 2011 awards


Again a bunch of Argentinian developers won first and third prizes in the Innovation Technology Awards, held in the
19th International Smalltalk Conference 2011 in Edinburgh, UK.
The complete list of winners and the details of the projects
here.
The complete list of presented projects
here.
Congrats not only to the winners, but also to all the people that continue innovating and developing new technologies using Smalltalk.
by Germán Arduino (noreply@blogger.com) at August 28, 2011 02:41 PM
July 12, 2011
Germán Arduino
Pharo: Smalltalk, open source, innovative, documented, what else?


Smalltalk is real objects technology, not only object oriented, the word of difference may make a world of difference.
This means that everything in the environment is an object and the only way to communicate with an object is sending it messages. It's all, objects and messages.
In addition all the objects live in an environment (the currently named image) as en ecosystem that is alive all the time. That means that you can modify your objects and the modification happens while the object is alive on the image.
These modifications and messages are written in a language. The Smalltalk environment has a language, also called Smalltalk, very simple and easy to learn and understand.
The main barrier to people wanting to start with Smalltalk is the Objects paradigm, but after a time changing the mind a new world appear.
Pharo is an open source implementacion of Smalltalk and the mission stated in its web page is: Pharo's goal is to deliver a clean, innovative, free open-source Smalltalk environment. By providing a stable and small core system, excellent dev tools, and maintained releases, Pharo is an attractive platform to build and deploy mission critical Smalltalk applications.
Pharo is currently in the version 1.2.1 as stable, 1.3 is almost ready and 1.4 in development and it uses the traditional virtual machine but also the new, faster Cog virtual machine.
The VM is particular to each platform, but the image run unchanged between platforms. A developer could be developing in Mac and deploy in a Ubuntu server with no problems. Also any other combination of supported operating systems.
Pharo is ready to develop almost any type of application from desktop to web with plenty of frameworks ready to use. Check here some success stories.
How to install:
But also you can have you VM with lot of different images installed, because the installation is very straightforward, it's only matter of copy the images and sources in a directory, open it with the selected VM and it's all.
All the different downloads here.
You can use the already compiled vm or compile yourself. For a help building your own cog vm version check my blog post.
by Germán Arduino (noreply@blogger.com) at July 12, 2011 06:33 PM
April 09, 2011
Germán Arduino
Do you know paper.li?


Paper.li is very useful application that is saving lot of time to me.
As says in its home page:
by Germán Arduino (noreply@blogger.com) at April 09, 2011 01:09 PM
April 06, 2011
Germán Arduino
¿Cómo instalar Morphic Designer en Squeak 4.2?


Viendo como adaptar
XMLRPC a Squeak es que bajé la última versión estable (4.2) para empezar a trabajar en el tema.
Me sorprendió la velocidad de esta versión (la uso con
Cog 2378) asi que no pude evitar ponerme a repasar algunos proyectos que no había podido revisar en profundidad y que me interesan.
Como, charlando con algunos colegas, vi que no están tan claros los pasos para la instalación se me ocurrió escribir un pequeño tutorial que facilite la tarea de quien necesite instalarlo (versión estable) y aquí se los comparto:
1. Actualizar la imagen de Squeak 4.2
2. En un workspace evaluar, en orden:
(Installer mc http: 'http://www.hpi.uni-potsdam.de/hirschfeld/squeaksource/')
project: 'MetacelloRepository';
install: 'ConfigurationOfWidgets'.
ConfigurationOfWidgets load.
(Installer mc http: 'http://www.hpi.uni-potsdam.de/hirschfeld/squeaksource/')
project: 'MetacelloRepository';
install: 'ConfigurationOfDesigner'.
ConfigurationOfDesigner load.
3. Y finalmente:
UiDesigner open.
by Germán Arduino (noreply@blogger.com) at April 06, 2011 10:22 PM
March 24, 2011
Germán Arduino
Conexiones VPN - Un nuevo servicio para nuestros clientes


Queremos informar a nuestros clientes que hemos incorporado un nuevo servicio, relacionado con el tema Seguridad, tan importante en los tiempos que corren. Se trata de conexiones VPN (Red Privada Virtual) tanto para individuos como para empresas.
Con nuestro servicio Ud recibirá un usuario/password para volver anónima su conexión a Internet. En lugar de conectarse por su proveedor habitual de Internet, le proveemos un túnel seguro a uno de nuestros servidores VPN en Holanda, desde el cual saldrá a Internet con nuestras propias direcciones IP y mediante conexiones de alta velocidad.
Esto es especialmente indicado para que su verdadera IP (la de su proveedor de servicios internet) no quede registrada en ninguno de los sitios que Ud visite y como la conexión a nuestros servidores es encriptada, tampoco correrá el riesgo que sus actividades por Internet sean "sniffeadas" (Es decir que alguien pueda "espiar" el tráfico y adueñarse de sus contraseñas u otra información privada).
Además, podrá realizar descargas de archivos/software/películas mediante conexiones de alta velocidad de acuerdo a los distintos planes con que contamos.
Algunas características del servicio son:
- Red Privada Virtual (VPN)
- Conexión Segura Encriptada
- Accesos de alta velocidad
- Internet Anónima
Una demostración de como se ve la salida a Internet antes y después de conectarse mediante nuestro servicio de VPN es la siguiente:
Antes, por nuestra conexión mediante nuestro ISP:
Luego de establecer la conexión por VPN (sobre el acceso a Internet provisto por el ISP):
Cabe aclarar que las conexiones que proveemos funcionan en sistemas operativos Linux, Mac OSX y Windows.
by Germán Arduino (noreply@blogger.com) at March 24, 2011 10:18 PM
December 08, 2010
Germán Arduino
Smalltalk in the Enterprise


I want to save here some interesting concepts I read on such mails:
From Tudor Girba:
I recently introduced Pharo in a small-medium software company (parametrix.ch). They use it for Moose (moosetechnology.org) to analyze their systems written in various languages and to introduce an assessment approach in their day to day development process (humane-assessment.com). A number of them are now learning to program in Pharo and Moose.
Moose is a valuable platform exactly because it is built in Smalltalk. Developers understand the power of Smalltalk in the context of Moose quite quickly after they do a couple of tutorials. The result is that they end up wanting to learn Smalltalk.
In fact, I argued for quite a while that vendors should use Moose to promote Smalltalk. The cool thing about it is that it addresses directly programmers that develop in all sorts of languages (especially Java). This gives us a nice back door.
The Smalltalk success stories (at the enterprise level) come from solving problems that are very difficult to solve in the first place.
Looking at some of GemStone's customers there are two common characteristics:
- large complex problems
- problems whose domain is rapidly changing
The large problems have to be broken down into pieces that are small enough for a small team of people to attack effectively and the work of these small teams has to be integrated to address the larger problem.
This plays into the strength of Smalltalk in that Smalltalk code (and developers) can thrive in an environment where the code base is inconsistent/fluid ...
For problems whose domain is rapidly changing it is a requirement that the _architecture_ of the system be able to migrate over time. As business rules change the architecture of the system has to evolve.
Again the requirement of having a malleable code base where functionality can migrate and the architecture can evolve play into the strengths of Smalltalk...
Smalltalk improves developer productivity ... pure and simple ... the reason that developing in Smalltalk is fun is that there is very little that gets in between the developer and the solution of a problem ... the debugger, inspector and all of the tools mean that a developer can focus on the problem at hand ... the dynamic nature of Smalltalk means that I can add instance variables and change interfaces without having to fight the compiler or the tools ... or lose track of what I am doing ....
With that said (here comes the rant:) ... the _enterprise_ is not necessarily interested in developer productivity...productive developers is way down the list for the enterprise ... just look at the waste (not just in software) in a typical corporation ... (end of rant) ...
Smaller companies (not at the enterprise level) _are_ interested in developer productivity, so that should be the sweet spot for Smalltalk and there is work to be done to make Smalltalk more attractive to those Smaller companies and it seems that Pharo is headed in the right direction to become more attractive ... Note that many development groups within the enterprise operate like smaller companies, it's just that a CTO of a Fortune 500 company isn't going to wholesale switch his company from using Java to using Smalltalk (at least not this year:)...
Oh and GemStone also has enterprise customers who don't necessarily advertise their Smalltalk success stories.
We must continue teaching in the universities..and why not.. The companies.. For free.... Only for introduce the technollogy in the market
We must support projects such Seaside, Reef, Glorp, SqueakDBX or Mars (and it's futures version for linux and windows). This cain of projects are the bridge from the mainstream world to smalltalk..
We must make deal's with the traditional software companies.. And don't be scare for sign a contract where the project have webservices and java, php or .net front-end. although the solution is not needed. (Obviously if you don't will be the architect :) )
We need make the peace with commercial people and the technology publications..
At last and over all, when any one from this group, have the chance, one chance, to have a CIO position, take it, and make the difference.
This one, please don't think as traditional CIO, think different.
I think an effective way to evangelize Pharo/Squeak/Smalltalk is to when anybody has the liberty to do so, use it in the small areas where the business has a need and no dependencies or any particular bureaucratic requirements.
Encourage coworkers to try it for personal projects, invite them to local user groups. Even if it is simply to explore something different and unknown. Find out some of their interests and where possible and reasonable demonstrate a Pharo solution for their interests.
I think the more people we can get to choose Pharo/Squeak/Smalltalk for personal interests, the more people will begin to use it for the jobs at work that they have the liberty to choose. Over time this could lead to understanding of the benefits that Pharo/Squeak/Smalltalk can bring to the enterprise environment or to the developers life in general. If they use it at home, they may also help to improve our enterprise story so that they can make a living using their tool of choice.
Pic Info:
by Germán Arduino (noreply@blogger.com) at December 08, 2010 02:14 PM
December 06, 2010
Germán Arduino
Videos of Smalltalks 2010 are online!


The videos of talks in Smalltalks 2010 are online at:
http://www.fast.org.ar/smalltalks2010
Enjoy!

by Germán Arduino (noreply@blogger.com) at December 06, 2010 11:16 PM
November 22, 2010
Germán Arduino
New Prices for PasswordsPro


 |
| PasswordsPro Single License |
From November 22, 2010 we set up new prices for
PasswordsPro:
1 License: $ 14.90
5 Licenses Pack: $ 46.25 ( $ 9,25/lic)
10 Licenses Pack: $ 77.50 ($ 7.75/lic)
Also we have FREE licenses for do-gooders (a thing we learned from Balsamiq).
Finally we have also free license by our agreement with TrialPay.
All prices in US dollars.
by Germán Arduino (noreply@blogger.com) at November 22, 2010 06:20 PM
November 14, 2010
Germán Arduino
Smalltalks 2010 ended


A new edition of the Argentinian conference about Smalltalk ended and was really an excellent event, with a very very good organization, thanks to the hard work of FAST people, and a high level technical talks.
Lot of international guests shared their knowledgment here mixed with lot of argentinian people showing their Smalltalk work. A big oppotunity to learn from others and to share three nice days, talking with other smalltalkers in the breaks and lunchs and dinners.
Also a very friendly and relaxing environment with excellent attention of the people of UTN Concepción.
I really enjoyed a lot to be there and think that all people interested in objects technology can't miss the next conference in Argentina!
by Germán Arduino (noreply@blogger.com) at November 14, 2010 01:12 PM
November 12, 2010
Germán Arduino
Smalltalks 2010 started


The conference started with the welcome talks from authorities of the University and the major of the city.
We had a lot of interesting talks and also very distinguished guests sharing their knowledgment.
Further, we had a complete day plenty of interesting topics as you can check on the Schedule tab of the
conference site.
In such important event also I had the opportunity to give my talk about
Smalltalk & MicroISV's and I'm very happy of share these sort of things with the
Smalltalk community.
Thanks
FAST by the hard working to organize this event in Argentina!
by Germán Arduino (noreply@blogger.com) at November 12, 2010 02:48 AM
November 04, 2010
Germán Arduino
Smalltalk and MicroISVs


The idea behind this talk is show the potential of Smalltalk to be used on MicroISV world (small companies, mostly of only one person, developing packaged or custom software).
Being Arduino Software itself a MicroISV, the talk will comment the own experiences, with different tools, and the advantages obtained with Smalltalk.
A quick pane for the different solutions developed from year 2003 (Year of definitive adoption of Smalltalk in Arduino Software) to show the audience the wide range of possibilities and how Smalltalk helps also on the entrepreneurial spirit.
Finally, some references to the MicroISV world (organizations, sites, forums, events) to help introduce the audience on this world.
Pic information:
http://www.flickr.com/photos/dimmerswitch/3609801758/sizes/m/in/photostream/ / License
by Germán Arduino (noreply@blogger.com) at November 04, 2010 03:42 PM
September 03, 2010
Germán Arduino
Building Cog VM on Ubuntu Lucid Lynx


Finally I decided to build
Cog on my
Ubuntu 10.04 box.
The first step is download the needed sources:
svn co http://www.squeakvm.org/svn/squeak/branches/Cog/platforms
svn co http://www.squeakvm.org/svn/squeak/branches/Cog/src
svn co http://www.squeakvm.org/svn/squeak/branches/Cog/unixbuild
Then, I followed the 3d. instructions from Eliot, because I want to build the VM on a 64-bit OS.
I have an Ubuntu 64 bits without special installations, I mean, installed exactly as the ISO installs, with no special packages selected.
Then, the first step is install the following packages needed to compile in 32-bit mode on 64-bit ubuntu:
lib32asound2-dev
libgl1-mesa-dev
libglu1-mesa-dev
build-essential
ia32-libs
gcc-multilib
g++-multilib
At this point I run the configuration script, but it failed with an error message for complaining about missing XShm.h. Doing a bit of googling I found that I probably need to do this:
sudo apt-get install libx11-dev libxpm-dev x11proto-xext-dev libxext-dev
Again run configure script and this time the error message was for complaining about missing X11/Intrinsic.h. Google found the solution once more time, another no istalled package:
sudo apt-get install libxt-dev
And now, the configuration script:
../../platforms/unix/config/configure CC="gcc -m32" CXX="g++ -m32" CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0" LIBS=-lpthread
run ok.
Remember to run it from
unixbuild/bld directory.
And finally, execute:
make install prefix=WhereYouWantTheVmToGo
And voila, the Cog vm is built!
Pic information:
http://www.flickr.com/photos/hugo90/1719493630/ /
CC BY 2.0
by Germán Arduino (noreply@blogger.com) at September 03, 2010 06:41 PM
August 29, 2010
Germán Arduino
¿Qué hacemos en Arduino Software?


Desde hace tiempo, tengo pendiente un post explicando todas las actividades que relizamos en
Arduino Software asi que el presente artículo tiene ese fin, realizar una presentación de nuestros productos y servicios.
Nuestras áreas de trabajo son las siguientes:
Desarrollo de Software Desktop, Web y Embebido:
El objetivo es desarrollar software que permanezca lo más inmune posible a los cambios tecnológicos y que funcione en la mayor cantidad de plataformas (Linux, Windows, Macintosh,Unixes, Móviles).
Ello se logra con el uso de tecnología de objetos reales (no simplemente orientado a objetos), utilizando diferentes variedades de Smalltalk (el ambiente de objetos por excelencia).
Desarrollamos productos a medida, proyectos específicos para otras software house y también software empaquetado o para comercialización como servicio (SaaS).
Además, estamos dando los primeros pasos en software de control industrial (microprocesadores plc, etc) desde un enfoque de producción con tecnología
de objetos (
Squeak,
Pharo).
Algunos de nuestros productos más importantes son:
A1-Business CMS:
Es un sistema que pertenece a la categoría de los CMS o sistemas de gestión de contenidos, especialmente desarrollado para rubros de negocios específicos. La
versión actual soporta su uso como catálogo web de compañías inmobiliarias o bienes raíces.
También existe una versión para manejo de información documental escaneada.
Sitio Web A1 en Español:
http://www.arsol.biz/a1
Sitio Web A1 Versión Expedientes:
http://www.arsol.biz/a1/expindex.html
Passwords Pro:
Es un producto para almacenar en forma segura (encriptada) contraseñas y todo tipo de información confidencial.
Sitio Web:
http://www.passwordspro.com
Es un producto orientado a automatizar tareas manuales y repetitivas como identificarse a un sitio web, seleccionar opciones, rellenar formularios, subir y bajar archivos, etc.
Este producto puede ahorrar muchas horas de trabajo manual repetitivo y de poco valor agregado y puede ser fácilmente extendido para automatizar cualquier tipo de tareas de este estilo (Especialmente indicado para financieras, bancos, mutuales, tarjetas de crédito, y toda empresa que necesite manejar tareas vía web intercambiando archivos y datos).
Desarrollo de Sitios Web e Implementación de Software Libre:
Desarrollamos sitios web estáticos y dinámicos con especial enfoque en la implementación y adaptación de productos open source para fines específicos (por ejemplo OS-Commerce para Comercio Electronico, Sistemas ERP, CRM, BPM, CMS, Workflow, etc).
En estos casos proveemos también el alojamiento y la administración (backups, etc) como una solución completa llave en mano.
Consultoría y Mentoring en Desarrollo de Software con Tecnología de Objetos:
Brindamos capacitación para profesionales de informática interesados en incursionar en el mundo del desarrollo con objetos utilizando diferentes variedades de Smalltalks, pero con especial foco en
Pharo. Además supervisamos proyectos específicos con estas tecnologías en empresas que comienzan con la utilización de las mismas, con particular foco en el desarrollo web, utilizando
Seaside.
Administración y Configuración de Alojamiento de Sitios Web y Nombres de Dominios:
Administración y configuración de alojamiento para sitios web (webhosting) en servidores ubicados en los mejores datacenters de USA y Europa. Planes Windows y Linux con paneles de control para autoadministración, Servidores Virtuales y Dedicados con especial enfoque en Sistema Operativo Linux y tecnologías open source.
Además, administración y configuración de nombres de dominios .com; .net; .org; .info; .biz; .us; .tv y .es.
Presencia Internacional.
Luego de muchos años de trabajo serio y responsable, además de una dedicación continua a la mejora tecnológica hoy tenemos el orgullo de contar con clientes en Argentina, Bolivia, Paraguay, Uruguay, Costa Rica, México, USA, Ucrania, Australia, España, Suiza, República Dominicana y Bélgica.
Muchas gracias a todos quienes confían en nuestros productos y servicios.
http://www.flickr.com/photos/dnorman/3533040651/ /
CC BY 2.0
by Germán Arduino (noreply@blogger.com) at August 29, 2010 01:31 AM
July 03, 2010
Germán Arduino
WebPostAutomation released.


A local customer contacted me to solve a repetitive task on his business.
Such task is login on a website (of a provider of him), select some options, and upload until four different file types (The server software of the website upload the files using POST method).
The task must be made lot of times by day, in the moment that each one of the four file types is generated by an internal system.
The customer wanted a program to solve this manual and time consuming task. Then I developed a small piece of software named WebPostAutomation to make this task automatic.
My system is basically a Pharo 1.0 image with WebClient loaded with some adaptations to make upload of files using multipart/form-data through POST method.
WebPostAutomation have a configuration file with the parameters that need to know to make its job.
Also, each operation of WebPostAutomation is logged using a simple log mechanism I developed to this project (The logging engines I found on Squeaksource were so complicated to my current needs). A sample of the log file next:
Being that the customer is using Windows on his daily work, I deployed WebPostAutomation with the latest Pharo VM for Windows, tweaking somethings with the configuration of the vm file.
To inform the result of each upload I parse the HTML returned by the server and log that info.
I know is a simple solution, but also is a clean solution, far better than automate the task using Internet Browser macros (that is the first obvious option).
Using WebPostAutomation is simple and straightforward and the communication is directly with the remote web server with no other pieces of software in the middle.
I wrote this article to show another possibility of make business using our lovely Smalltalk.
Pic Information:
http://www.flickr.com/photos/sepblog/3941048713/ /
CC BY 2.0
by Germán Arduino (noreply@blogger.com) at July 03, 2010 02:09 AM
June 26, 2010
Germán Arduino
ESUG will sponsor the XMLRPC project!


ESUG will sponsor my project
XMLRPC Support for Pharo/Squeak HTTP Clients.
Scope: XMLRPC is a spec and a set of implementations that allow software running on disparate operating systems, running in different environments to make procedure calls over the Internet. Such calls are on XML format and sent by HTTP POST method.
The proposal of this project is implement XMLRPC, as a general purpose protocol, for clients written in Pharo and Squeak make requests of servers supporting the protocol.
My plan is start from a client named Spy, currently on
Squeaksource that is from 2005 and update it with the current state of the protocol XMLRPC and Pharo/Squeak tools (XML Parser, HTTP Clients, Installers, etc). I already added ByteString support.
Also I plan develop a set of examples to use XMLRPC against the best know sites that support the protocol on its servers, as for example Flickr, Youtube, etc.
Motivation: The main motivation of this project is develop a new interface needed to people using Pharo/Squeak can interact with servers supporting XMLRPC.
Of course, the result of this project, will be released with the MIT license.
And the very good new to me is that ESUG selected this project on their "Support your project" program, so they will be helping me financially. Thanks you very much ESUG!
The page to documentation and news about this project is this:
XMLRPC Project.
by Germán Arduino (noreply@blogger.com) at June 26, 2010 03:47 PM
April 07, 2010
Germán Arduino
Pharo/Squeak Tips - Counting lines of code


I will try to publish here some tips I found useful and that may be of help to others. Of course, some of them, will be very basic, but still may be useful for newbies.
Said that, a thing that I like to know is the approximate lines of code of my projects, the lines of code I write in a period of time, etc.
To know that you can use the following code:
Being, in this case, 'G1' the two letters that identify all the classes of the project I want to measure.
The output looks like:
Ok, now you can measure how many lines of Smalltalk code you write at day! :)
by Germán Arduino (noreply@blogger.com) at April 07, 2010 08:17 PM
March 31, 2010
Germán Arduino
Get PasswordsPro free!


From today you can get
PasswordsPro free of charge,
through our new partnership with
TrialPay.com.
Check the offer on our
buy page.

by Germán Arduino (noreply@blogger.com) at March 31, 2010 02:35 PM
January 04, 2010
Germán Arduino
Interview on Entrepreneurship Interviews


The interview is available on
English and
Spanish.
Cristian also wrote two intros to the interview:
here and
here. (Only English).
Thanks Cristian.
Cristian también escribió dos intros para la entrevista:
aquí y
aquí. (Sólo en inglés).
Gracias Cristian.
by Germán Arduino (noreply@blogger.com) at January 04, 2010 10:17 PM
December 25, 2009
José Redrejo
Nueva imagen de Squeak para Educación
Después de unos meses con la imagen de Squeak para educación, ya tenemos la versión definitiva para usarse en el curso que viene.
Algunas de las novedades:
- Preconfiguración para descargar paquetes del repositorio de proyectos de la Junta de Extremadura
- Corrección de fallo de importación de archivos en la herramienta de aula
- Actualización de las últimas correcciones desde www.squeakland.org
- De nuevo funciona la grabación de sonidos desde Squeak en linux (se había perdido esta funcionalidad al pasar en LinEx de oss a alsa)
- Nueva versión de la máquina virtual, más rápida y con mejor soporte de la aceleración gráfica (si la tarjeta gráfica la tiene disponible) para poder usar Croquet
- Añadida una hoja de cálculo (Skeleton , diseñada por Takashi Yamamiya) que permite realizar dentro de Squeak, usando los eToys, todo tipo de simulaciones matemáticas, sin tener que recurrir a lenguajes de programación. Para mostrar su uso he grabado vídeos con este ejemplo simple y este otro algo más complejo. Los que se apañen con el idioma inglés, tienen más información y un tutorial a fondo en este documento.
Es todo, no dejen de actualizarse y visitar http://squeak.educarex.es y http://proyectos.educarex.es donde se irán añadiendo más tutoriales, información y proyectos.
Los usuarios de linex2006 ya saben que sólo tienen que hacer clic aquí para instalárselo (si saben su contraseña de root, claro)
P.S. Se me olvidaba: para los reductos de windozeros, he hecho un instalador (guiado y ayudado por Germán Arduino). Como ejercicio de masoquismo lo he hecho usando wine, ya que no tenía ningún windoze a mi disposición, pero ya sé de gente que lo ha usado sobre Windows Original (TM) y les ha funcionado. Eso sí, el grado de masoquismo no ha llegado a hacer el plugin para el explorer, la imagen sólo se puede usar como una aplicación normal.
by José L. Redrejo Rodríguez at December 25, 2009 04:43 PM
December 23, 2009
José Redrejo
Classroom en español y su instalación
Para que classroom sea más fácil de usar he subido una nueva versión que añade una pestaña al lado derecho de Squeak, desde el que se pueden usar sus componentes. He subido también la traducción a español.
Se puede instalar en cualquier imagen de squeak versión 3.8, incluyendo la versión de Small-land.
Para hacerlo son necesarios estos pasos (es importante seguir el orden):
1.- Traducción a español: En la imagen de Small-Land pulsar en el menú Configuración -> actualizar desde un servidor, con esto cargamos la traducción a español y actualizamos la imagen a la última disponible. Si no se usa la imagen de small-land se puede bajar el archivo de traducción desde aquí y cargarlo mediante el editor de idioma.
2.- Configuración -> Cambiar a modo experto -> Sí
3.- Configuración -> Apariencia -> Fuentes del sistema -> Fuente de los eToysescoger cualquier fuente distinta de la Komika, por ejemplo: BistreamVeraSans , 9 Point, Normal. La imagen de small-land tiene la fuente komika que tiene un fallo importante: entra en un bucle infinito al cambiarle el tamaño. Por eso hay que usar otra fuente.
4.- Sobre el mundo pulsamos la tecla escape, aparecerá un menú. Ahí pulsamos Abrir -> Cargador de paquetes de SqueakMap. Tardará un poquito en bajarse el listado de paquetes disponibles de internet. Una vez que esté el listado a la vista buscamos el paquete Classroom.
5.- En el árbol de paquetes de la izquierda, sobre la palabra Classroom hacemos clic con el botón central del ratón y aparecerá un menú, escojemos install, se quejará un par de veces de que esa versión no está garantizada, decimos que Sí para que lo instale.
Listo, para dejar todo como estaba, volvemos al menú Configuración -> Cambiar a modo principiante. Finalmente menú Squeak -> Grabar.
IMPORTANTE: Si usando la imagen de Small-Land se queda mucho rato con el mensaje de que está creando la pestaña nueva es porque no hemos cambiado la fuente komika como se dice en el punto 3. No hay posibilidad de hacer otra cosa que cerrar Squeak y volver a empezar.
by José L. Redrejo Rodríguez at December 23, 2009 01:58 PM
Mi primer paquete para Squeak