Tamaño del image en Pharo

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|

Tamaño del image en Pharo

Sebastian Calvo
Gente:

Baje Pharo 1.1 one click. El image era de 21 Mb.
Instale, Seaside, Magritte2, Pier y GlorpDBX.
El image se fue a 51 Mb !

¿Esto es normal en Pharo?

Hay alguna tool para rastrear las instancias por clase y cuanto espacio ocupan?

Saludos
  GallegO

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Mariano Martinez Peck


2010/10/10 GallegO <[hidden email]>
Gente:

Baje Pharo 1.1 one click. El image era de 21 Mb.
Instale, Seaside, Magritte2, Pier y GlorpDBX.
El image se fue a 51 Mb !

¿Esto es normal en Pharo?


Creo que si.
 
Hay alguna tool para rastrear las instancias por clase y cuanto espacio ocupan?


Tal vez "SpaceTally new printSpaceAnalysis"?

Tal vez puedas evaluar un "ScriptLoader new cleanUpForRelease" y despues guarda la imagen con otro nombre y compara.
Si queres saber que hace ese metodo, fijate.

Saludos

Mariano
 
Saludos
 GallegO

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

EstebanLM
In reply to this post by Sebastian Calvo
Tenes q hacer un flush del monticello. Cuando llegue a casa te mando como se hace

Enviado desde mi iPhone

El 10/10/2010, a las 12:43, GallegO <[hidden email]> escribió:

> Gente:
>
> Baje Pharo 1.1 one click. El image era de 21 Mb.
> Instale, Seaside, Magritte2, Pier y GlorpDBX.
> El image se fue a 51 Mb !
>
> ¿Esto es normal en Pharo?
>
> Hay alguna tool para rastrear las instancias por clase y cuanto espacio ocupan?
>
> Saludos
>  GallegO
>
> --
> To post to this group, send email to [hidden email]
> To unsubscribe from this group, send email to [hidden email]
>
> http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Sebastian Calvo
In reply to this post by Mariano Martinez Peck
Mariano:

Bueno, con el tally veo si no me equivoco que de bitmaps hay 11 megas
ya asi que... bueno espero el script de Esteban, no es nada urgente.

Pregunta aparte. Vos estas manteniendo las ConfigurationOfXxxx para pharo no?

Gracias y Saludos


El día 10 de octubre de 2010 13:03, Mariano Martinez Peck
<[hidden email]> escribió:

>
>
> 2010/10/10 GallegO <[hidden email]>
>>
>> Gente:
>>
>> Baje Pharo 1.1 one click. El image era de 21 Mb.
>> Instale, Seaside, Magritte2, Pier y GlorpDBX.
>> El image se fue a 51 Mb !
>>
>> ¿Esto es normal en Pharo?
>>
>
> Creo que si.
>
>>
>> Hay alguna tool para rastrear las instancias por clase y cuanto espacio
>> ocupan?
>>
>
> Tal vez "SpaceTally new printSpaceAnalysis"?
>
> Tal vez puedas evaluar un "ScriptLoader new cleanUpForRelease" y despues
> guarda la imagen con otro nombre y compara.
> Si queres saber que hace ese metodo, fijate.
>
> Saludos
>
> Mariano
>
>>
>> Saludos
>>  GallegO
>>
>> --
>> To post to this group, send email to [hidden email]
>> To unsubscribe from this group, send email to
>> [hidden email]
>>
>> http://www.clubSmalltalk.org
>
> --
> To post to this group, send email to [hidden email]
> To unsubscribe from this group, send email to
> [hidden email]
>
> http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Mariano Martinez Peck


2010/10/10 GallegO <[hidden email]>
Mariano:

Bueno, con el tally veo si no me equivoco que de bitmaps hay 11 megas
ya asi que... bueno espero el script de Esteban, no es nada urgente.


Hace lo que yo te dije, ScriptLoader new cleanUpFor release. Si te fijas, eso adentro hace además de un montón de cosas, lo que te dijo Esteban:

MCFileBasedRepository flushAllCaches.
    MCMethodDefinition shutDown.
    MCDefinition clearInstances.

 
Pregunta aparte. Vos estas manteniendo las ConfigurationOfXxxx para pharo no?


Maso. No todo. Me encargo de actualizar (más que nada a la hora de hacer un nuevo release de Pharo) los Conf que yo use para Pharo y el ConfigurationOfPharo. Por?

saludos
 
Gracias y Saludos


El día 10 de octubre de 2010 13:03, Mariano Martinez Peck
<[hidden email]> escribió:
>
>
> 2010/10/10 GallegO <[hidden email]>
>>
>> Gente:
>>
>> Baje Pharo 1.1 one click. El image era de 21 Mb.
>> Instale, Seaside, Magritte2, Pier y GlorpDBX.
>> El image se fue a 51 Mb !
>>
>> ¿Esto es normal en Pharo?
>>
>
> Creo que si.
>
>>
>> Hay alguna tool para rastrear las instancias por clase y cuanto espacio
>> ocupan?
>>
>
> Tal vez "SpaceTally new printSpaceAnalysis"?
>
> Tal vez puedas evaluar un "ScriptLoader new cleanUpForRelease" y despues
> guarda la imagen con otro nombre y compara.
> Si queres saber que hace ese metodo, fijate.
>
> Saludos
>
> Mariano
>
>>
>> Saludos
>>  GallegO
>>
>> --
>> To post to this group, send email to [hidden email]
>> To unsubscribe from this group, send email to
>> [hidden email]
>>
>> http://www.clubSmalltalk.org
>
> --
> To post to this group, send email to [hidden email]
> To unsubscribe from this group, send email to
> [hidden email]
>
> http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Sebastian Calvo
Hola:

> Hace lo que yo te dije, ScriptLoader new cleanUpFor release. Si te fijas,
> eso adentro hace además de un montón de cosas, lo que te dijo Esteban:
>
> MCFileBasedRepository flushAllCaches.
>     MCMethodDefinition shutDown.
>     MCDefinition clearInstances.

Efectivo! 32.8 mega ahora. Si le descontamos los bitmaps, que seguro
no estaban, da mas o menos el tamaño inicial.

>> Pregunta aparte. Vos estas manteniendo las ConfigurationOfXxxx para pharo
>> no?
>
> Maso. No todo. Me encargo de actualizar (más que nada a la hora de hacer un
> nuevo release de Pharo) los Conf que yo use para Pharo y el
> ConfigurationOfPharo. Por?
>
ok, entiendo la diferencia.
Hay alguna tool para armar las Configuration? Veo que cada clase tiene
una estructura similar pero no identica.
En realidad, queria hacerme un script para bajar todo lo que necesito
para portar Seaside 3.0.rc desde SqueakSource. Antes cuando estaba el
Seaside builder me fue muy facil obtener el script. Ahora cuando fui a
mirar las configuration me pegue un palo. Por lo menos me gustaria
poner algo que loguee en el Transcript los pacs que va instalando,
luego me copio de ahi eso y lo importo en dolphin directamente.

Como reflexion me parece medio extraño esto de las configuration,
instalar una clase, luego evaluar en un workspace. Sin animo de
ofender, me da la impresion que no le han encontrado la vuelta. O si?

Bueno, voy a probar lo otro y tratar de ayudar en lo que pueda para
testear en Win.

Gracias por todo.

Saludos

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Mariano Martinez Peck


2010/10/10 GallegO <[hidden email]>
Hola:

> Hace lo que yo te dije, ScriptLoader new cleanUpFor release. Si te fijas,
> eso adentro hace además de un montón de cosas, lo que te dijo Esteban:
>
> MCFileBasedRepository flushAllCaches.
>     MCMethodDefinition shutDown.
>     MCDefinition clearInstances.

Efectivo! 32.8 mega ahora. Si le descontamos los bitmaps, que seguro
no estaban, da mas o menos el tamaño inicial.

:)
 

>> Pregunta aparte. Vos estas manteniendo las ConfigurationOfXxxx para pharo
>> no?
>
> Maso. No todo. Me encargo de actualizar (más que nada a la hora de hacer un
> nuevo release de Pharo) los Conf que yo use para Pharo y el
> ConfigurationOfPharo. Por?
>
ok, entiendo la diferencia.
Hay alguna tool para armar las Configuration? Veo que cada clase tiene
una estructura similar pero no identica.
En realidad, queria hacerme un script para bajar todo lo que necesito
para portar Seaside 3.0.rc desde SqueakSource.

Primero, te recomiendo que hagas el tutorial de Metacello. No te lleva mas de una hora. En la imagen dev ya viene cargado incluse. Mira:
http://code.google.com/p/metacello/wiki/Tutorial

Lo de seaside es facil, evalua:

Gofer new
    squeaksource: 'MetacelloRepository';
    package: 'ConfigurationOfSeaside30';
    load.

ConfigurationOfSeaside30 project latestVersion load.

If you want to load different groups, just ask:

ConfigurationOfSeaside30 project latestVersion groups. Then you can load the groups you wants with #load:

 
Antes cuando estaba el
Seaside builder me fue muy facil obtener el script. Ahora cuando fui a
mirar las configuration me pegue un palo. Por lo menos me gustaria
poner algo que loguee en el Transcript los pacs que va instalando,
luego me copio de ahi eso y lo importo en dolphin directamente.

Podes hacer esto. Con Metacello podes hacer hasta si queres un "record" que hace todo, pero en realidad nada (o sea, resuelve dependencias y blah pero no te instala nada).

ConfigurationOfSeaside30 project latestVersion record.

Y a eso le podes imprimir el #loadDirective....hace un print de:

ConfigurationOfSeaside30 project latestVersion record loadDirective.

 
 

Como reflexion me parece medio extraño esto de las configuration,
instalar una clase, luego evaluar en un workspace. Sin animo de
ofender, me da la impresion que no le han encontrado la vuelta. O si?


Obvio. Pero no podes empezar haciendo todo de golpe. Primero tiene que estar andando bien el software, luego podes crear una UI mas feliz. Yo en Ubuntu use el apt-get toda mi vide y nunca necesité el synaptic. Igualmente, está Metacello-OB  que tiene UI. Aunque ni idae, nunca lo use. Yo lo hago a mano. Tambien existe Metaceller y hay otros flacos haciendo otra UI. Ya va a llegar.
 
Bueno, voy a probar lo otro y tratar de ayudar en lo que pueda para
testear en Win.

:)
 

Gracias por todo.

Saludos

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Mariano Martinez Peck
Otra cosa, tanto importa el tamaño de la imagen de desarrollo?

Mirá que para hacer un deploy se suele hacer distinto. Tenes que usar un PharoCore (no Pharo de desarrollo), cargarle todos los paquetes que quieras, y al final evaluar "ScriptLoader new cleanUpForRelease.".  Está imágen va a ser mucho mas chica y limpia para app productivas.

Saludos

Mariano

2010/10/10 Mariano Martinez Peck <[hidden email]>


2010/10/10 GallegO <[hidden email]>
Hola:


> Hace lo que yo te dije, ScriptLoader new cleanUpFor release. Si te fijas,
> eso adentro hace además de un montón de cosas, lo que te dijo Esteban:
>
> MCFileBasedRepository flushAllCaches.
>     MCMethodDefinition shutDown.
>     MCDefinition clearInstances.

Efectivo! 32.8 mega ahora. Si le descontamos los bitmaps, que seguro
no estaban, da mas o menos el tamaño inicial.

:)
 

>> Pregunta aparte. Vos estas manteniendo las ConfigurationOfXxxx para pharo
>> no?
>
> Maso. No todo. Me encargo de actualizar (más que nada a la hora de hacer un
> nuevo release de Pharo) los Conf que yo use para Pharo y el
> ConfigurationOfPharo. Por?
>
ok, entiendo la diferencia.
Hay alguna tool para armar las Configuration? Veo que cada clase tiene
una estructura similar pero no identica.
En realidad, queria hacerme un script para bajar todo lo que necesito
para portar Seaside 3.0.rc desde SqueakSource.

Primero, te recomiendo que hagas el tutorial de Metacello. No te lleva mas de una hora. En la imagen dev ya viene cargado incluse. Mira:
http://code.google.com/p/metacello/wiki/Tutorial

Lo de seaside es facil, evalua:

Gofer new
    squeaksource: 'MetacelloRepository';
    package: 'ConfigurationOfSeaside30';
    load.

ConfigurationOfSeaside30 project latestVersion load.

If you want to load different groups, just ask:

ConfigurationOfSeaside30 project latestVersion groups. Then you can load the groups you wants with #load:

 
Antes cuando estaba el
Seaside builder me fue muy facil obtener el script. Ahora cuando fui a
mirar las configuration me pegue un palo. Por lo menos me gustaria
poner algo que loguee en el Transcript los pacs que va instalando,
luego me copio de ahi eso y lo importo en dolphin directamente.

Podes hacer esto. Con Metacello podes hacer hasta si queres un "record" que hace todo, pero en realidad nada (o sea, resuelve dependencias y blah pero no te instala nada).

ConfigurationOfSeaside30 project latestVersion record.

Y a eso le podes imprimir el #loadDirective....hace un print de:

ConfigurationOfSeaside30 project latestVersion record loadDirective.

 
 

Como reflexion me parece medio extraño esto de las configuration,
instalar una clase, luego evaluar en un workspace. Sin animo de
ofender, me da la impresion que no le han encontrado la vuelta. O si?


Obvio. Pero no podes empezar haciendo todo de golpe. Primero tiene que estar andando bien el software, luego podes crear una UI mas feliz. Yo en Ubuntu use el apt-get toda mi vide y nunca necesité el synaptic. Igualmente, está Metacello-OB  que tiene UI. Aunque ni idae, nunca lo use. Yo lo hago a mano. Tambien existe Metaceller y hay otros flacos haciendo otra UI. Ya va a llegar.
 
Bueno, voy a probar lo otro y tratar de ayudar en lo que pueda para
testear en Win.

:)
 

Gracias por todo.

Saludos

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org


--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Andres Valloud-5
Che, igual... no es por ser amargo, pero no te parece un poco mucho
que una imagen de desarrolo ocupe 50mb?... por supuesto es mucho mas
facil decirlo que hacerlo, pero me parece que estaria bueno ir al
reves... o sea, empezar con una imagen chiquita y cargarle encima lo
que uno quiere pero nada mas que eso.

A largo plazo, me parece que la estamos pifiando con esto (no solo
Squeak/Pharo, que conste!).  Como ilustracion, hace 15 años, la imagen
base de VisualWorks ocupaba ~3mb.  Impresionante como anda esa imagen
en una maquina de hoy, todo rapidisimo, todo al toque, nada demora,
todo vuela.  Hoy, visual.im anda cerca de los 20mb.  No sera 50mb,
pero igual estaria bueno que un monton de lo que esta en esa imagen
viniera en paquetes.  Sacarle cosas a visual.im a mano no es tan facil
como parece.

Del mismo modo, hace mas o menos 9 años existia el Squeak World Tour,
y llegamos a tener una imagen de desarrollo bastante normal de 2.2mb.
Nos costo bastante limpiarla, empezamos con una imagen normal de
Squeak.  Todavia me acuerdo tener que andar haciendo cosas horribles
como mandarle become: String new a ciertos objetos  para poder
borrarlos porque se resistian a irse (!!!).  Use esa imagen durante un
buen rato para hacer mis cosas de Minesweeper.

Pero bueno, porque nos hace falta tanto chirimbolo para programar?  A
mi gusto, pagamos un precio alto porque el bodoque inicial (el
"kernel") crece y se hace mas y mas dificil romperlo en pedazos
chicos, porque despues no se pueden descargar las cosas una vez que
las cargaste e integraste demasiado (un ejemplo que me viene a la
mente: tratar de sacar una extension al browser mientras el browser
funciona, en general no veo muchas ganas de programar una registracion
de modulos para que descargar extensiones funcione de manera
razonable), y porque en general tratar de borrar cosas una vez que
estan cargadas siempre es mas dificil que nunca haberlas cargado desde
el vamos.  Insisto que no es trabajo facil y al final parece que no
tuviera valor asi que no se hace, pero es super importante.

Tendriamos que tener una imagen de 250kb o menos, generada mediante
codigo en vez de hackeaduras de workspace.  Esta imagen tendria que
poder cargar codigo en paquetes.  Uno de esos paquetes tendria que ser
la interfaz grafica.  De este modo, siempre se podria reproducir un
estado de cosas predecible y versionable (podes poner el codigo que
genera la imagen, los paquetes, y las especificaciones de imagenes de
desarrollo o produccion o lo que fuera bajo un sistema de control de
versiones).  Ademas, asi te aseguras que ninguna de tus hackeaduras de
workspace o algun bug corrompio tu imagen años atras.  Por ejemplo,
hace poco Nicolas Cellier se dio cuenta que bitXor: y bitAnd: no
siempre daban los resultados correctos.  Seguro, ese bug lo arreglas.
Pero cuantas decadas tuvieron esos bugs para romper de manera sutil la
imagen que desde ese tiempo venimos emparchando?  Como sabes que la
imagen esta bien si no la podes reproducir desde cero con una maquina
virtual sin el bug, y cargando paquetes sin el bug desde el vamos?

2010/10/11 Mariano Martinez Peck <[hidden email]>:

> Otra cosa, tanto importa el tamaño de la imagen de desarrollo?
>
> Mirá que para hacer un deploy se suele hacer distinto. Tenes que usar un
> PharoCore (no Pharo de desarrollo), cargarle todos los paquetes que quieras,
> y al final evaluar "ScriptLoader new cleanUpForRelease.".  Está imágen va a
> ser mucho mas chica y limpia para app productivas.
>
> Saludos
>
> Mariano
>
> 2010/10/10 Mariano Martinez Peck <[hidden email]>
>>
>>
>> 2010/10/10 GallegO <[hidden email]>
>>>
>>> Hola:
>>>
>>> > Hace lo que yo te dije, ScriptLoader new cleanUpFor release. Si te
>>> > fijas,
>>> > eso adentro hace además de un montón de cosas, lo que te dijo Esteban:
>>> >
>>> > MCFileBasedRepository flushAllCaches.
>>> >     MCMethodDefinition shutDown.
>>> >     MCDefinition clearInstances.
>>>
>>> Efectivo! 32.8 mega ahora. Si le descontamos los bitmaps, que seguro
>>> no estaban, da mas o menos el tamaño inicial.
>>
>> :)
>>
>>>
>>> >> Pregunta aparte. Vos estas manteniendo las ConfigurationOfXxxx para
>>> >> pharo
>>> >> no?
>>> >
>>> > Maso. No todo. Me encargo de actualizar (más que nada a la hora de
>>> > hacer un
>>> > nuevo release de Pharo) los Conf que yo use para Pharo y el
>>> > ConfigurationOfPharo. Por?
>>> >
>>> ok, entiendo la diferencia.
>>> Hay alguna tool para armar las Configuration? Veo que cada clase tiene
>>> una estructura similar pero no identica.
>>> En realidad, queria hacerme un script para bajar todo lo que necesito
>>> para portar Seaside 3.0.rc desde SqueakSource.
>>
>> Primero, te recomiendo que hagas el tutorial de Metacello. No te lleva mas
>> de una hora. En la imagen dev ya viene cargado incluse. Mira:
>> http://code.google.com/p/metacello/wiki/Tutorial
>>
>> Lo de seaside es facil, evalua:
>>
>> Gofer new
>>     squeaksource: 'MetacelloRepository';
>>     package: 'ConfigurationOfSeaside30';
>>     load.
>>
>> ConfigurationOfSeaside30 project latestVersion load.
>>
>> If you want to load different groups, just ask:
>>
>> ConfigurationOfSeaside30 project latestVersion groups. Then you can load
>> the groups you wants with #load:
>>
>>
>>>
>>> Antes cuando estaba el
>>> Seaside builder me fue muy facil obtener el script. Ahora cuando fui a
>>> mirar las configuration me pegue un palo. Por lo menos me gustaria
>>> poner algo que loguee en el Transcript los pacs que va instalando,
>>> luego me copio de ahi eso y lo importo en dolphin directamente.
>>
>> Podes hacer esto. Con Metacello podes hacer hasta si queres un "record"
>> que hace todo, pero en realidad nada (o sea, resuelve dependencias y blah
>> pero no te instala nada).
>>
>> ConfigurationOfSeaside30 project latestVersion record.
>>
>> Y a eso le podes imprimir el #loadDirective....hace un print de:
>>
>> ConfigurationOfSeaside30 project latestVersion record loadDirective.
>>
>>
>>
>>>
>>> Como reflexion me parece medio extraño esto de las configuration,
>>> instalar una clase, luego evaluar en un workspace. Sin animo de
>>> ofender, me da la impresion que no le han encontrado la vuelta. O si?
>>>
>>
>> Obvio. Pero no podes empezar haciendo todo de golpe. Primero tiene que
>> estar andando bien el software, luego podes crear una UI mas feliz. Yo en
>> Ubuntu use el apt-get toda mi vide y nunca necesité el synaptic. Igualmente,
>> está Metacello-OB  que tiene UI. Aunque ni idae, nunca lo use. Yo lo hago a
>> mano. Tambien existe Metaceller y hay otros flacos haciendo otra UI. Ya va a
>> llegar.
>>
>>>
>>> Bueno, voy a probar lo otro y tratar de ayudar en lo que pueda para
>>> testear en Win.
>>
>> :)
>>
>>>
>>> Gracias por todo.
>>>
>>> Saludos
>>>
>>> --
>>> To post to this group, send email to [hidden email]
>>> To unsubscribe from this group, send email to
>>> [hidden email]
>>>
>>> http://www.clubSmalltalk.org
>
> --
> To post to this group, send email to [hidden email]
> To unsubscribe from this group, send email to
> [hidden email]
>
> http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Mariano Martinez Peck


2010/10/11 Andres Valloud <[hidden email]>
Che, igual... no es por ser amargo, pero no te parece un poco mucho
que una imagen de desarrolo ocupe 50mb?...

No. Mi máquina tiene 500gb de HDD.
Además, la imagen de desarrollo es 20MB. Seaside30 y Glorp son 2 proyectos grandes.
En realidad, son 30MB (después de borrar la cache de Monticello).

Cuanto pesa el eclipse con toda la sdk?
 
por supuesto es mucho mas
facil decirlo que hacerlo, pero me parece que estaria bueno ir al
reves... o sea, empezar con una imagen chiquita y cargarle encima lo
que uno quiere pero nada mas que eso.

A largo plazo, me parece que la estamos pifiando con esto (no solo
Squeak/Pharo, que conste!).  Como ilustracion, hace 15 años, la imagen
base de VisualWorks ocupaba ~3mb.  Impresionante como anda esa imagen
en una maquina de hoy, todo rapidisimo, todo al toque, nada demora,
todo vuela.  Hoy, visual.im anda cerca de los 20mb.  No sera 50mb,
pero igual estaria bueno que un monton de lo que esta en esa imagen
viniera en paquetes.  Sacarle cosas a visual.im a mano no es tan facil
como parece.

Del mismo modo, hace mas o menos 9 años existia el Squeak World Tour,
y llegamos a tener una imagen de desarrollo bastante normal de 2.2mb.
Nos costo bastante limpiarla, empezamos con una imagen normal de
Squeak.  Todavia me acuerdo tener que andar haciendo cosas horribles
como mandarle become: String new a ciertos objetos  para poder
borrarlos porque se resistian a irse (!!!).  Use esa imagen durante un
buen rato para hacer mis cosas de Minesweeper.


minesweeper. que es eso?  me interesa.
 
Pero bueno, porque nos hace falta tanto chirimbolo para programar?  A
mi gusto, pagamos un precio alto porque el bodoque inicial (el
"kernel") crece y se hace mas y mas dificil romperlo en pedazos
chicos,

Nicolas Paez, argentino, está laburando en Pharo en un proyecto llamado Seed. El te podrá dar detalles, pero entre unas de las cositas que hizo fue integrar bocha de cambios en los paquetes y categorias, para poder hacerlo mas modulable. De hecho, se usaron herramientas de visualizacion en Moose para detectar ciclos y demás. Se buscó romper con estos ciclos, etc.
De ahí que es más fácil hacer la PharoKernel, que ronda los 2.2 mb.
 
porque despues no se pueden descargar las cosas una vez que
las cargaste e integraste demasiado (un ejemplo que me viene a la
mente: tratar de sacar una extension al browser mientras el browser
funciona, en general no veo muchas ganas de programar una registracion
de modulos para que descargar extensiones funcione de manera
razonable), y porque en general tratar de borrar cosas una vez que
estan cargadas siempre es mas dificil que nunca haberlas cargado desde
el vamos.  Insisto que no es trabajo facil y al final parece que no
tuviera valor asi que no se hace, pero es super importante.

Estoy de acuerdo.
 

Tendriamos que tener una imagen de 250kb o menos, generada mediante
codigo en vez de hackeaduras de workspace.  Esta imagen tendria que
poder cargar codigo en paquetes.  Uno de esos paquetes tendria que ser
la interfaz grafica.  De este modo, siempre se podria reproducir un
estado de cosas predecible y versionable (podes poner el codigo que
genera la imagen, los paquetes, y las especificaciones de imagenes de
desarrollo o produccion o lo que fuera bajo un sistema de control de
versiones).  Ademas, asi te aseguras que ninguna de tus hackeaduras de
workspace o algun bug corrompio tu imagen años atras.  Por ejemplo,
hace poco Nicolas Cellier se dio cuenta que bitXor: y bitAnd: no
siempre daban los resultados correctos.  Seguro, ese bug lo arreglas.
Pero cuantas decadas tuvieron esos bugs para romper de manera sutil la
imagen que desde ese tiempo venimos emparchando?  Como sabes que la
imagen esta bien si no la podes reproducir desde cero con una maquina
virtual sin el bug, y cargando paquetes sin el bug desde el vamos?

2010/10/11 Mariano Martinez Peck <[hidden email]>:
> Otra cosa, tanto importa el tamaño de la imagen de desarrollo?
>
> Mirá que para hacer un deploy se suele hacer distinto. Tenes que usar un
> PharoCore (no Pharo de desarrollo), cargarle todos los paquetes que quieras,
> y al final evaluar "ScriptLoader new cleanUpForRelease.".  Está imágen va a
> ser mucho mas chica y limpia para app productivas.
>
> Saludos
>
> Mariano
>
> 2010/10/10 Mariano Martinez Peck <[hidden email]>
>>
>>
>> 2010/10/10 GallegO <[hidden email]>
>>>
>>> Hola:
>>>
>>> > Hace lo que yo te dije, ScriptLoader new cleanUpFor release. Si te
>>> > fijas,
>>> > eso adentro hace además de un montón de cosas, lo que te dijo Esteban:
>>> >
>>> > MCFileBasedRepository flushAllCaches.
>>> >     MCMethodDefinition shutDown.
>>> >     MCDefinition clearInstances.
>>>
>>> Efectivo! 32.8 mega ahora. Si le descontamos los bitmaps, que seguro
>>> no estaban, da mas o menos el tamaño inicial.
>>
>> :)
>>
>>>
>>> >> Pregunta aparte. Vos estas manteniendo las ConfigurationOfXxxx para
>>> >> pharo
>>> >> no?
>>> >
>>> > Maso. No todo. Me encargo de actualizar (más que nada a la hora de
>>> > hacer un
>>> > nuevo release de Pharo) los Conf que yo use para Pharo y el
>>> > ConfigurationOfPharo. Por?
>>> >
>>> ok, entiendo la diferencia.
>>> Hay alguna tool para armar las Configuration? Veo que cada clase tiene
>>> una estructura similar pero no identica.
>>> En realidad, queria hacerme un script para bajar todo lo que necesito
>>> para portar Seaside 3.0.rc desde SqueakSource.
>>
>> Primero, te recomiendo que hagas el tutorial de Metacello. No te lleva mas
>> de una hora. En la imagen dev ya viene cargado incluse. Mira:
>> http://code.google.com/p/metacello/wiki/Tutorial
>>
>> Lo de seaside es facil, evalua:
>>
>> Gofer new
>>     squeaksource: 'MetacelloRepository';
>>     package: 'ConfigurationOfSeaside30';
>>     load.
>>
>> ConfigurationOfSeaside30 project latestVersion load.
>>
>> If you want to load different groups, just ask:
>>
>> ConfigurationOfSeaside30 project latestVersion groups. Then you can load
>> the groups you wants with #load:
>>
>>
>>>
>>> Antes cuando estaba el
>>> Seaside builder me fue muy facil obtener el script. Ahora cuando fui a
>>> mirar las configuration me pegue un palo. Por lo menos me gustaria
>>> poner algo que loguee en el Transcript los pacs que va instalando,
>>> luego me copio de ahi eso y lo importo en dolphin directamente.
>>
>> Podes hacer esto. Con Metacello podes hacer hasta si queres un "record"
>> que hace todo, pero en realidad nada (o sea, resuelve dependencias y blah
>> pero no te instala nada).
>>
>> ConfigurationOfSeaside30 project latestVersion record.
>>
>> Y a eso le podes imprimir el #loadDirective....hace un print de:
>>
>> ConfigurationOfSeaside30 project latestVersion record loadDirective.
>>
>>
>>
>>>
>>> Como reflexion me parece medio extraño esto de las configuration,
>>> instalar una clase, luego evaluar en un workspace. Sin animo de
>>> ofender, me da la impresion que no le han encontrado la vuelta. O si?
>>>
>>
>> Obvio. Pero no podes empezar haciendo todo de golpe. Primero tiene que
>> estar andando bien el software, luego podes crear una UI mas feliz. Yo en
>> Ubuntu use el apt-get toda mi vide y nunca necesité el synaptic. Igualmente,
>> está Metacello-OB  que tiene UI. Aunque ni idae, nunca lo use. Yo lo hago a
>> mano. Tambien existe Metaceller y hay otros flacos haciendo otra UI. Ya va a
>> llegar.
>>
>>>
>>> Bueno, voy a probar lo otro y tratar de ayudar en lo que pueda para
>>> testear en Win.
>>
>> :)
>>
>>>
>>> Gracias por todo.
>>>
>>> Saludos
>>>
>>> --
>>> To post to this group, send email to [hidden email]
>>> To unsubscribe from this group, send email to
>>> [hidden email]
>>>
>>> http://www.clubSmalltalk.org
>
> --
> To post to this group, send email to [hidden email]
> To unsubscribe from this group, send email to
> [hidden email]
>
> http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Andres Valloud-5
> 2010/10/11 Andres Valloud <[hidden email]>
>>
>> Che, igual... no es por ser amargo, pero no te parece un poco mucho
>> que una imagen de desarrolo ocupe 50mb?...
>
> No. Mi máquina tiene 500gb de HDD.

Ojo que estaba pensando mas en RAM que en disco.  Esas imagenes no
entran en el cache del CPU, asi que todo va mas lento de lo que podria
ir porque en general los programas Smalltalk acceden memoria mas o
menos al azar.  Es todo un tema esto...

> Nicolas Paez, argentino, está laburando en Pharo en un proyecto llamado
> Seed. El te podrá dar detalles, pero entre unas de las cositas que hizo fue
> integrar bocha de cambios en los paquetes y categorias, para poder hacerlo
> mas modulable. De hecho, se usaron herramientas de visualizacion en Moose
> para detectar ciclos y demás. Se buscó romper con estos ciclos, etc.
> De ahí que es más fácil hacer la PharoKernel, que ronda los 2.2 mb.

Eso esta bueno, denle para adelante!  Cuanto mas chico, mejor.

> minesweeper. que es eso?  me interesa.

http://blogten.blogspot.com/2009/10/minesweeper-sample-app.html.
Escribi acerca de eso en el volumen 1 del Fundamentals.

Andres.

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Andres Valloud-5
Perdon, en el volumen 2, que aun no termine de escribir.

2010/10/11 Andres Valloud <[hidden email]>:

>> 2010/10/11 Andres Valloud <[hidden email]>
>>>
>>> Che, igual... no es por ser amargo, pero no te parece un poco mucho
>>> que una imagen de desarrolo ocupe 50mb?...
>>
>> No. Mi máquina tiene 500gb de HDD.
>
> Ojo que estaba pensando mas en RAM que en disco.  Esas imagenes no
> entran en el cache del CPU, asi que todo va mas lento de lo que podria
> ir porque en general los programas Smalltalk acceden memoria mas o
> menos al azar.  Es todo un tema esto...
>
>> Nicolas Paez, argentino, está laburando en Pharo en un proyecto llamado
>> Seed. El te podrá dar detalles, pero entre unas de las cositas que hizo fue
>> integrar bocha de cambios en los paquetes y categorias, para poder hacerlo
>> mas modulable. De hecho, se usaron herramientas de visualizacion en Moose
>> para detectar ciclos y demás. Se buscó romper con estos ciclos, etc.
>> De ahí que es más fácil hacer la PharoKernel, que ronda los 2.2 mb.
>
> Eso esta bueno, denle para adelante!  Cuanto mas chico, mejor.
>
>> minesweeper. que es eso?  me interesa.
>
> http://blogten.blogspot.com/2009/10/minesweeper-sample-app.html.
> Escribi acerca de eso en el volumen 1 del Fundamentals.
>
> Andres.
>

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Sebastian Calvo
In reply to this post by Mariano Martinez Peck
El día 11 de octubre de 2010 04:59, Mariano Martinez Peck
<[hidden email]> escribió:
> Otra cosa, tanto importa el tamaño de la imagen de desarrollo?

Mientras sea normal. No me había parecido normal que creciera un 150%
al instalar 3 proyectos.
Realmente en desarrollo no importa mientras este justificado por lo
que cargamos.
Lo que no me gusta es que este pesada de basura.

> Mirá que para hacer un deploy se suele hacer distinto. Tenes que usar un
> PharoCore (no Pharo de desarrollo), cargarle todos los paquetes que quieras,
> y al final evaluar "ScriptLoader new cleanUpForRelease.".  Está imágen va a
> ser mucho mas chica y limpia para app productivas.

Es bueno saberlo.

Saludos

>
> Saludos
>
> Mariano
>
> 2010/10/10 Mariano Martinez Peck <[hidden email]>
>>
>>
>> 2010/10/10 GallegO <[hidden email]>
>>>
>>> Hola:
>>>
>>> > Hace lo que yo te dije, ScriptLoader new cleanUpFor release. Si te
>>> > fijas,
>>> > eso adentro hace además de un montón de cosas, lo que te dijo Esteban:
>>> >
>>> > MCFileBasedRepository flushAllCaches.
>>> >     MCMethodDefinition shutDown.
>>> >     MCDefinition clearInstances.
>>>
>>> Efectivo! 32.8 mega ahora. Si le descontamos los bitmaps, que seguro
>>> no estaban, da mas o menos el tamaño inicial.
>>
>> :)
>>
>>>
>>> >> Pregunta aparte. Vos estas manteniendo las ConfigurationOfXxxx para
>>> >> pharo
>>> >> no?
>>> >
>>> > Maso. No todo. Me encargo de actualizar (más que nada a la hora de
>>> > hacer un
>>> > nuevo release de Pharo) los Conf que yo use para Pharo y el
>>> > ConfigurationOfPharo. Por?
>>> >
>>> ok, entiendo la diferencia.
>>> Hay alguna tool para armar las Configuration? Veo que cada clase tiene
>>> una estructura similar pero no identica.
>>> En realidad, queria hacerme un script para bajar todo lo que necesito
>>> para portar Seaside 3.0.rc desde SqueakSource.
>>
>> Primero, te recomiendo que hagas el tutorial de Metacello. No te lleva mas
>> de una hora. En la imagen dev ya viene cargado incluse. Mira:
>> http://code.google.com/p/metacello/wiki/Tutorial
>>
>> Lo de seaside es facil, evalua:
>>
>> Gofer new
>>     squeaksource: 'MetacelloRepository';
>>     package: 'ConfigurationOfSeaside30';
>>     load.
>>
>> ConfigurationOfSeaside30 project latestVersion load.
>>
>> If you want to load different groups, just ask:
>>
>> ConfigurationOfSeaside30 project latestVersion groups. Then you can load
>> the groups you wants with #load:
>>
>>
>>>
>>> Antes cuando estaba el
>>> Seaside builder me fue muy facil obtener el script. Ahora cuando fui a
>>> mirar las configuration me pegue un palo. Por lo menos me gustaria
>>> poner algo que loguee en el Transcript los pacs que va instalando,
>>> luego me copio de ahi eso y lo importo en dolphin directamente.
>>
>> Podes hacer esto. Con Metacello podes hacer hasta si queres un "record"
>> que hace todo, pero en realidad nada (o sea, resuelve dependencias y blah
>> pero no te instala nada).
>>
>> ConfigurationOfSeaside30 project latestVersion record.
>>
>> Y a eso le podes imprimir el #loadDirective....hace un print de:
>>
>> ConfigurationOfSeaside30 project latestVersion record loadDirective.
>>
>>
>>
>>>
>>> Como reflexion me parece medio extraño esto de las configuration,
>>> instalar una clase, luego evaluar en un workspace. Sin animo de
>>> ofender, me da la impresion que no le han encontrado la vuelta. O si?
>>>
>>
>> Obvio. Pero no podes empezar haciendo todo de golpe. Primero tiene que
>> estar andando bien el software, luego podes crear una UI mas feliz. Yo en
>> Ubuntu use el apt-get toda mi vide y nunca necesité el synaptic. Igualmente,
>> está Metacello-OB  que tiene UI. Aunque ni idae, nunca lo use. Yo lo hago a
>> mano. Tambien existe Metaceller y hay otros flacos haciendo otra UI. Ya va a
>> llegar.
>>
>>>
>>> Bueno, voy a probar lo otro y tratar de ayudar en lo que pueda para
>>> testear en Win.
>>
>> :)
>>
>>>
>>> Gracias por todo.
>>>
>>> Saludos
>>>
>>> --
>>> To post to this group, send email to [hidden email]
>>> To unsubscribe from this group, send email to
>>> [hidden email]
>>>
>>> http://www.clubSmalltalk.org
>
> --
> To post to this group, send email to [hidden email]
> To unsubscribe from this group, send email to
> [hidden email]
>
> http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Mariano Martinez Peck
In reply to this post by Andres Valloud-5


2010/10/11 Andres Valloud <[hidden email]>
> 2010/10/11 Andres Valloud <[hidden email]>
>>
>> Che, igual... no es por ser amargo, pero no te parece un poco mucho
>> que una imagen de desarrolo ocupe 50mb?...
>
> No. Mi máquina tiene 500gb de HDD.

Ojo que estaba pensando mas en RAM que en disco.

ahh yo pensé que estaba hablando del tamaño en disco...igualmente están bastante relacionados.
 
 Esas imagenes no
entran en el cache del CPU, asi que todo va mas lento de lo que podria
ir porque en general los programas Smalltalk acceden memoria mas o
menos al azar.  Es todo un tema esto...

Si, tal cual. Un par de veces discutimos con Marcus Denker de modificar la VM para que aloque (como se escribirá?) los objetos de una manera un poco mas inteligente y que disminuya el overhead del accesso random.
 

> Nicolas Paez, argentino, está laburando en Pharo en un proyecto llamado
> Seed. El te podrá dar detalles, pero entre unas de las cositas que hizo fue
> integrar bocha de cambios en los paquetes y categorias, para poder hacerlo
> mas modulable. De hecho, se usaron herramientas de visualizacion en Moose
> para detectar ciclos y demás. Se buscó romper con estos ciclos, etc.
> De ahí que es más fácil hacer la PharoKernel, que ronda los 2.2 mb.

Eso esta bueno, denle para adelante!  Cuanto mas chico, mejor.

Igualmente yo también creo que 50mb en ram es mucho y que cuanto menos mejor. De hecho, de eso se trata el tema de mi PhD :)
 

> minesweeper. que es eso?  me interesa.

http://blogten.blogspot.com/2009/10/minesweeper-sample-app.html.
Escribi acerca de eso en el volumen 1 del Fundamentals.


gracias.

 
Andres.

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Tamaño del image en Pharo

Andres Valloud-5
> Si, tal cual. Un par de veces discutimos con Marcus Denker de modificar la
> VM para que aloque (como se escribirá?) los objetos de una manera un poco
> mas inteligente y que disminuya el overhead del accesso random.

Llegaron a algo interesante?

> Igualmente yo también creo que 50mb en ram es mucho y que cuanto menos
> mejor. De hecho, de eso se trata el tema de mi PhD :)

Uh, que bueno!  Cuando tenga mas tiempo a mi me gustaria hacer esas
cosas en VisualWorks tambien.

Andres.

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org