tag:blogger.com,1999:blog-88298800031943742242024-03-12T22:37:25.686-04:00Programación, servidores y todo lo que me gusta y me apasionaDedicado a Linux, OS X, programación y las cosas que me gustan.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.comBlogger100125tag:blogger.com,1999:blog-8829880003194374224.post-34400909971635281852016-10-15T10:09:00.000-04:002018-03-10T14:11:03.818-05:00Sandboxx The Military Social NetworkDesde el 22 de Julio tengo el gusto de formar parte de <a href="http://www.sandboxx.us/" target="_blank">Sandboxx The Military Social Network</a> como Principal iOS Engineer y durante este tiempo he podido contribuir a mejorar la app en varios sentidos.<br />
<br />
Ha sido un reto bastante grande, porque yo sólo tenía conocimientos de Swift y la app está escrita complemente en Objective-C y sin usar para nada el Interface Builder ni Storyboards ni nada de las tecnologías que ayudan a crear las interfaces en forma gráfica.<br />
<br />
A pesar de eso, en sus últimas versiones la aplicación ha aumentado su rendimiento y he corregido muchos errores. He integrado nuevas tecnologías como Apple Pay y estoy en proceso de integrar muchas cosas más.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://2.bp.blogspot.com/-sg-wEvaHvV0/WAI4Fci0gtI/AAAAAAAAHJ0/dUjibMezQREjfUKFV8dHj-oePXgEd5SbACK4B/s1600/IMG_2314.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="https://2.bp.blogspot.com/-sg-wEvaHvV0/WAI4Fci0gtI/AAAAAAAAHJ0/dUjibMezQREjfUKFV8dHj-oePXgEd5SbACK4B/s640/IMG_2314.PNG" width="359" /></a></div>
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://itunes.apple.com/us/app/sandboxx/id912636512?mt=8&at=1000lxDC" style="background-size: contain; background: url("https://linkmaker.itunes.apple.com/assets/shared/badges/en-us/appstore-lrg.svg") no-repeat; display: inline-block; height: 40px; overflow: hidden; width: 135px;"><br /></a></div>
Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-46891106496388202342016-05-30T20:14:00.003-04:002018-03-10T14:08:56.183-05:00Roomhints 5 en la App StoreDurante los últimos años he tenido oportunidad de trabajar en diferentes proyectos, unos grandes, otros pequeños, pero ninguno me había dado tanta satisfacción como <a href="https://www.roomhints.com/" target="_blank">Roomhints</a>.<br />
<br />
Para quienes no lean muy seguido mis publicaciones, Roomhints es una aplicación para iOS que trata de ayudar a las personas a decorar su casa, cuarto u oficina de acuerdo a sus gustos y con la ayuda de un diseñador de interiores profesional.<br />
<br />
Luego de muchos cambios e iteraciones, junto con el resto de miembros del equipo decidimos sacar una nueva versión de la aplicación, que además de los consejos que un diseñador profesional le da al usuario, también permite que nosotros gestionemos todo el proceso de comprar de los productos que el diseñador sugiere.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-oC0akDQNIiA/V0zVrb8dCPI/AAAAAAAAGh8/wv_rJTNlxOMXHrM78v0gF0xDcSXyo1vNACLcB/s1600/IMG_1605.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://3.bp.blogspot.com/-oC0akDQNIiA/V0zVrb8dCPI/AAAAAAAAGh8/wv_rJTNlxOMXHrM78v0gF0xDcSXyo1vNACLcB/s320/IMG_1605.PNG" width="179" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
Han sido varios meses de mucho trabajo para poder brindarles una buena experiencia y durante los cuales hemos añadido nuevas tecnologías como Apple Pay a nuestra aplicación, también añadimos soporte para Paypal y pago con tarjetas de créditos.</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
De momento, sólo gestionamos el envío de productos en Estados Unidos y Canadá.</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
Pueden descargar su aplicación en el link a continuación.</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://itunes.apple.com/us/app/roomhints-design-ideas/id572215690?mt=8&at=1000lxDC" style="display:inline-block;overflow:hidden;background:url(https://linkmaker.itunes.apple.com/assets/shared/badges/en-us/appstore-lrg.svg) no-repeat;width:135px;height:40px;background-size:contain;"></a>
</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<br />Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-53604190461177938582016-05-25T13:14:00.003-04:002016-05-30T20:17:09.988-04:00ZMX Radio Actualizada<div style="text-align: justify;">
Hace unos meses les contaba que ya tenía mi primera App para iOS, pues ahora les cuento que he actualizado la app para tener soporte controlar la reproducción desde el centro de control de iOS y también desde la pantalla de bloqueo, así como permitir controlar la aplicación desde los controles de los audífonos.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-OS46qwNp0Xw/V0Xc9YlAFAI/AAAAAAAAGhE/I3yhSAE3RUkUGmZxNOSWv99gP4CD-vKPgCLcB/s1600/IMG_1582.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://4.bp.blogspot.com/-OS46qwNp0Xw/V0Xc9YlAFAI/AAAAAAAAGhE/I3yhSAE3RUkUGmZxNOSWv99gP4CD-vKPgCLcB/s400/IMG_1582.PNG" width="223" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-DxAm0nfQX6w/V0XdCQZmIdI/AAAAAAAAGhI/8EN6ghGVMM038hMJvLa75zQh8lXGg5k-QCLcB/s1600/IMG_1581.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://4.bp.blogspot.com/-DxAm0nfQX6w/V0XdCQZmIdI/AAAAAAAAGhI/8EN6ghGVMM038hMJvLa75zQh8lXGg5k-QCLcB/s400/IMG_1581.PNG" width="223" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
Espero que quienes la use disfruten de las nuevas características :)Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-6700398335751925962016-04-23T11:03:00.000-04:002017-07-11T00:33:40.314-04:00Mi primera aplicación en la App StoreDesde hace ratos quería aprender desarrollo para iOS y no fue hasta el año pasado que se dió la oportunidad mientras trabajaba desarrollando <a href="http://www.roomhints.com/" target="_blank">Roomhints</a>.<br />
<br />
Así que desde el año pasado y luego de algunos meses soy el encargado del desarrollo de la Aplicación de Roomhints para iOS.<br />
<br />
Pero de eso no es de lo que quería hablar hoy, sino de otra aplicación que hice a solicitud de un amigo. Es algo bastante simple, pero que me llena de mucho orgullo.<br />
<br />
Mi primera aplicación de streaming para una radio en línea. La Radio ZMX de Delware andaba buscando alguien que les desarrollara una aplicación simple para hacer streaming de su radio desde iOS.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-XqOEYzRD04U/VxUxWYNWG_I/AAAAAAAAGbo/fL8q_2EIWHsZWLxwbpzNSLjccya-kmX3gCLcB/s1600/IMG_1326.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://3.bp.blogspot.com/-XqOEYzRD04U/VxUxWYNWG_I/AAAAAAAAGbo/fL8q_2EIWHsZWLxwbpzNSLjccya-kmX3gCLcB/s320/IMG_1326.PNG" width="179" /></a></div>
<br />
Aunque la aplicación es sencilla, estoy preparando algunas mejoras para las funcionalidades actuales que espero les gusten a todos.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://itunes.apple.com/us/app/la-zmx-radio/id1084922077?mt=8&at=1000lxDC" style="background-size: contain; background: url("//linkmaker.itunes.apple.com/assets/shared/badges/en-us/appstore-lrg.svg") no-repeat; display: inline-block; height: 40px; overflow: hidden; width: 135px;"></a></div>
<br />Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-66897412793169008782015-11-09T02:21:00.001-05:002015-11-09T02:21:38.131-05:00Unboxing del Apple TV 4<iframe allowfullscreen="" frameborder="0" height="270" src="https://www.youtube.com/embed/d34EPa3Qs4U" width="480"></iframe><br /><br />
<br /><br />
Aprovecho para compartir con ustedes el unboxing del nuevo Apple TV de 4ta generación.<br /><br />
<br /><br />
A mi parecer, tiene algunas cosas buenas y otras que, pues no me gustan tanto, como el hecho de que Siri sólo este disponible en inglés incluso en Estados Unidos.<br /><br />
<br /><br />
Luego del unboxing, traté de configurarlo en español, pero finalmente me ha tocado configurarlo en inglés para poder usar Siri.<br /><br />
<br /><br />
En todo caso, será una buena forma de prácticar mi inglés.<br /><br />
<br /><br />
Luego grabaré un video del apple TV funcionando con algunas aplicaciones.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-51461996719005724202015-11-02T01:19:00.001-05:002015-11-03T00:23:05.898-05:00Why I want to join to Toptal?<div style="text-align: justify;">
For the past 5 years, I have been working on different projects with different programming languages and I enjoy every single project I did in this time.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
I had the chance to work with smart people since 2012 when I started to work at www.boost.me with Keith Toh a brilliant engineer from Stanford. He challenges me with every single task and I always tried to accomplish his expectations. In the months I have been working here, I always did my best to meet deadlines and build a good product.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
After boost.me I had another great opportunity to work building a real-time application using Django and the python implementation of Socket.io. This was an amazing experience because was my first time as a Lead Developer and Architect for the whole project. This time, the project don't end well because all the team leaves the company before to finish the product, mainly by internal problems in the company. But this was a great lesson for me as a professional and as a leader.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Few months later, I receive an awesome opportunity from www.ginzametrics.com to switch from Python and Django to work as a Full Stack Ruby on Rails developer. I always wished to make this change and I thought this could be funny and also challenging because I had to learn a new framework, new tools and also, be productive in 1 week. I have to admit that the first 2 months were the hardest work I ever did mainly because I used all my free time studying Ruby and Rails. I invested a lot of money in courses, books, and a lot of hours reading blogs and articles about Test Driven Development, Rspec, Unit Test with Ruby, etc. In the end was awesome, because, after a year, I was a good developer using ruby and rails.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
After leaves Ginza metrics this year, I have been working in few different projects like www.zlivio.com which is a call center platform that I built from scratch using Django, Twilio, and other tools. Also, working as a part of www.roomhints.com team. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
I really enjoyed this last project, because gave me the chance to work in an interesting idea. I have to admit, I fell in love when I knew the project and that is the reason because I started to study Swift and mobile development because I want to make the best application for roomhints.com.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Finally, this year I received an invitation to an interview from Amazon.com and they invited me to know his headquarters in Seattle. Sadly they don't give me the job at the end of the process, but the experience was so amazing.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
The reason because I want to join to <a href="http://www.toptal.com/web" target="_blank">Toptal</a> team is because I am good, I have been working hard in the past years and because I love to play hard and work harder and always do my best in all and for that I think I deserve work with the best developers and <a href="http://www.toptal.com/web" target="_blank">Toptal</a> have many awesome developers.</div>
Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-91808211151944680182015-10-30T14:20:00.000-04:002015-10-30T14:20:11.413-04:00Singleton en Swift 1.2 en adelanteComo les comentaba ayer, estoy aprendiendo desarrollo móvil, especificamente iOS y en el proyecto que estoy desarrollando, quería hacer uso de el patrón de diseño singleton.<br />
<br />
Dicho patrón de diseño, se basa en el principio de tener una sola instancia de una clase en todo momento. En el caso de swift 1.2 en adelante, la sintaxis del lenguaje es una delicia.<br />
<br />
Podemos crear un singleton con el siguiente código:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/-8r8Nyg9klqQ/VjOzTun5bBI/AAAAAAAAF9A/OFIdPwEEYkY/s1600/Captura%2Bde%2Bpantalla%2B2015-10-30%2Ba%2Blas%2B2.13.03%2Bp.m..png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="95" src="http://3.bp.blogspot.com/-8r8Nyg9klqQ/VjOzTun5bBI/AAAAAAAAF9A/OFIdPwEEYkY/s320/Captura%2Bde%2Bpantalla%2B2015-10-30%2Ba%2Blas%2B2.13.03%2Bp.m..png" width="320" /></a></div>
<br />
Algo que no se ve en la imagen, pero que necesitamos hacer es declarar el inicializador como privado y eso lo hacemos con:<br />
<br />
private init() {}<br />
<br />
Realmente, me parece genial la simplicidad para poder construir un patrón de diseño que es útil con tan pocas líneas de código. Defintivamente, rivaliza en simplicidad con el patrong Singleton en Ruby.<br />
<br />
Como forma de documentación esta es la forma anterior de crear el patron singleton en swift 1.1 y anteriores.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://2.bp.blogspot.com/-CVV3QSYjTQs/VjO0bQL2FeI/AAAAAAAAF9I/k00z6XGtX7Q/s1600/Captura%2Bde%2Bpantalla%2B2015-10-30%2Ba%2Blas%2B2.17.54%2Bp.m..png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="76" src="http://2.bp.blogspot.com/-CVV3QSYjTQs/VjO0bQL2FeI/AAAAAAAAF9I/k00z6XGtX7Q/s320/Captura%2Bde%2Bpantalla%2B2015-10-30%2Ba%2Blas%2B2.17.54%2Bp.m..png" width="320" /></a></div>
<br />Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-80426589552991921562015-10-29T12:12:00.001-04:002015-10-29T12:12:47.790-04:00Aprendiendo desarrollo móvil<div style="text-align: justify;">
Desde hace un par de meses he comenzado a parender desarrollo móvil para iOS. Espero en un par de meses poder publicar sobre mi primera aplicación en la App Store.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Aunque durante los dos últimos años me había comprado varios cursos y video tutoriales para aprender Objective-C, fue hasta hace unos meses que realmente me decidí a estudiar un poco y aprender Swfit que me parece algo más facil y parecido a los lenguajes de programción a los que estoy acostombrado.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Anteriormente, había tomado el curso de Stanford que imparte cada años Paul Hegarty, aunque nunca lo terminaba por diversos motivos.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Con Swift todo ha sido diferente, ya que, estoy avanzando bastante bien. Incluso, ya tengo un par de pantallas funcionando de la aplicación que estoy desarrollando para <a href="https://www.roomhints.com/" target="_blank">Room Hints</a>, que es el proyecto que me ha mantenido ocupado los últimos meses.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/-tl_tE4QoKn0/VjJEFQBlLyI/AAAAAAAAF8w/qrk5mCxgtvQ/s1600/Captura%2Bde%2Bpantalla%2B2015-10-29%2Ba%2Blas%2B12.06.09%2Bp.m..png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="280" src="http://3.bp.blogspot.com/-tl_tE4QoKn0/VjJEFQBlLyI/AAAAAAAAF8w/qrk5mCxgtvQ/s400/Captura%2Bde%2Bpantalla%2B2015-10-29%2Ba%2Blas%2B12.06.09%2Bp.m..png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
No voy a negar que ha sido algo complicado pasar de lenguages de scripting a un lenguaje fuertemente tipado, pero al mismo tiempo ha sido bastante divertido.<br />
<br />
Algunos links que me han ayudado:<br />
<br />
<br />
<ul>
<li><a href="http://www.appcoda.com/" target="_blank">App Coda</a></li>
<li><a href="http://www.raywenderlich.com/" target="_blank">Ray Wenderlich</a></li>
<li><a href="http://swiftdeveloperblog.com/" target="_blank">Swift Developer Blog</a></li>
</ul>
<div>
Espero que los enlaces también sean de utilidad para ustedes y me gustaría compartir experiencias con personas que como yo estan aprendiendo y también con desarrolladores con experiencia en esto de las aplicaciones móviles.</div>
Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-16125570739573781722015-09-13T17:53:00.001-04:002015-09-13T17:53:10.499-04:00Cambios en mi vidaHa pasado 1 año y 3 meses desde mi última entrada en el blog y mucho ha pasado en mi vida que quisiera comentarles y luego seguir con mi propósito de seguir dando vida a este blog.<br />
<br />
Aprovecho para contarles que en Enero de este año he dejado de trabajar en <a href="http://www.ginzametrics.com/" target="_blank">Giza Markets</a> y he pasado a trabajar de nuevo como freelance.<br />
<br />
Fue un poco complicado el hecho de dejar de ser un empleado con salario mensual para volver al mundo del Freelancing. Por suerte, tenía a viejos clientes entre mis contactos y sólo pasé una semana sin trabajar.<br />
<br />
En la semana que tuve libre, aproveché de descansar y de retomar un poco de contacto con Django. Debo aceptar que esto último fue bastante complicado ya que, viniendo de Rails, extrañaba bastante muchas de las cosas de Active Record cuando volví a Django.<br />
<br />
También pienso que el hecho de conocer un framework distinto me dio una perspectiva más amplia sobre las cosas que me gusta de Django y las que no. También siento que ahora soy mejor desarrollador y Arquitecto de aplicaciones.<br />
<br />
Además de volver a trabajar como Freelance, también he cambiado de País. Hace casi 6 meses estoy viviendo en Estados Unidos y estoy disfrutando mucho mi vida y mi trabajo aqui al lado de mi esposa.<br />
<br />
Tiendo a no hablar mucho de mi vida personal aqui, pero he de comentarles que me casé hace más de 2 años. Parte de las razones de mudarme a Estados Unidos se debe a que mi esposa vivía aqui y pues con la situación de delincuencia e inseguridad que se vive en El Salvador, pensamos que era una buena alternativa.<br />
<br />
Volviendo al tema, cuando vine, comence a trabajar con un buen amigo en un sistema para Call Center que estoy terminando, pero que ya tiene las funcionalidades básicas para poder funcionar correctamente haciendo llamadas, recibiendo llamadas de muchos usuarios, contestando llamadas, etc. Aún falta mucho por hacer, pero promete ser un excelente producto. Lo liberaré antes de finalizar el año bajo el nombre de <a href="https://sendi.to/" target="_blank">Sendito</a>, que significa mensajero en Esperanto.<br />
<br />
Además de eso, estoy trabajando en una empresa que tiene una <a href="https://itunes.apple.com/us/app/roomhints-interior-design/id572215690?mt=8" target="_blank">aplicación para iOS</a> que me gustaría que ustedes pudieran probar si necesitan ver que tipo de decoración o muebles son geniales para su empresa u oficina.<br />
<br />
Espero sus comentarios y pronto publicar más contenido interesante para todos ustedes.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-8646552234433836452014-07-06T20:14:00.000-04:002014-07-06T20:14:16.391-04:00Novedades en lo laboralHola a todos,<br />
<br />
Hoy me he dado cuenta que estamos en Julio y que mi propósito de escribir más seguido en el blog no se ha cumplido. Puedo decirles que han habido muy buenas razones para eso. Una de ellas es que cambie de trabajo justo después de mi último post y bueno... he estado bastante ocupado aprendiendo nuevas cosas.<br />
<br />
Lo importante no es sólo el cambio de trabajo, sino el cambio de área, ya que nunca había trabajado en el área de SEO y mucho más importante el cambio de lenguaje de programación, ya que, desde en Enero, soy Full Stack Developer en Ginza Markets, contribuyendo con mis conocimientos y habilidades a mejorar un poco el producto de la compañía.<br />
<br />
<a href="http://www.ginzametrics.com/" target="_blank">Ginza Metrics</a>, es una aplicación que todo SEO debe tener para manejar sus campañas y para crear reportes a sus clientes. Tiene muchas funcionalidades interesantes y me alegra poder contribuir a mejorar las existentes y a agregar nuevas.<br />
<br />
Parte de este cambio, espero que se vea reflejado en este blog, agregando contenido interesante acerca de las nuevas tecnologías con las que trabajo, ruby, rails, rake, rspec, etc.<br />
<br />
No puedo negar que en estos meses he extrañado mucho trabajar con mi lenguaje favorito (Python), pero ruby me ha dado gratas sorpresas con muchas de sus herramientas.<br />
<br />
Si les gustaría una publicación sobre una tecnología en particular, no duden en escribirme y trataré de publicarlo rápido.<br />
<br />
Saludos.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-39198404730844798622014-01-11T17:58:00.000-05:002014-01-11T17:58:01.787-05:00Retomando el BlogCreo que cada cierto tiempo pasa que encuentro algo que me hace abandonar un poco lo que escribo, pues eso ha sido lo que ha pasado en estos últimos meses.<br />
<br />
Justo unas semanas después de mi último post, conseguí un trabajo en <a href="http://www.socialdashboard.com/" target="_blank">Social Dashboard Inc.</a> que es una Startup que existe desde hace rato, pero que, su tecnología no había podido avanzar por falta de las herramientas que hicieran posible desarrollar lo que se pretendía que fuera. Inicialmente, mi trabajo era de desarrollador en Python/Django, pero por esas cosas raras de la vida, terminé como Lead Developer y ha sido algo que ha consumido mi tiempo.<br />
<br />
Me ha llenado de muchísimas satisfacciones, porque he tenido la oportunidad de aprender nuevas tecnologías como por ejemplo Socket.io (La implementación en python) que es una capa de abstracción para los Websockets de HTML5 :). De por si, algo para sentirse orgulloso, ya que, tenemos la oportunidad de user las últimas tecnologías como angular.js, webrtc, etc.<br />
<br />
Parte de mis propósitos para este año es lanzar la beta de Social Dashboard. Pueden ver una versión de desarrollo (que obviamente puede contener errores) <a href="http://dev.socialdashboard.com/" target="_blank">aqui</a>. Y aunque he escrito muchísimo aún no he explicado que es social dashboard.<br />
<br />
Bueno para hacerlo corto, el principal producto de Social Dashboard se llama Solomon, que es una especie de Buscador/Asistente personal que pretende ayudarnos en nuestras búsquedas de internet, permitiéndonos crear conexiones entre personas que comparten nuestros gustos.<br />
<br />
Pero mi propósito más grande para este 2014 es publicar muchos tutoriales acerca de Python y TDD (Test Driven Development) ya que, es algo que para proyectos grandes como Solomon. Además de cosas como redis, cassandra, socket.io, etc.<br />
<br />
Me gustaría que me comenten que les gustaría ver primero.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-51347991331100403022013-06-19T14:32:00.000-04:002013-06-19T14:32:05.938-04:00Resumen de 2013 hasta la fechaAunque se que tengo un poco abandonado el blog, quise pasarme por aqui para contarles algunas de las cosas que he hecho en lo que va del 2013.<br />
<br />
Recuerdo que el año pasado les comentaba que había estado trabajando para una empresa que está desarrollando una red social, dicha red social es <a href="http://boost.me/">boost.me</a> de la cual me siento muy orgulloso de haber sido parte y haber tenido la oportunidad de aprender, trabajar y divertirme. Lamentablemente, ya no pudimos continuar trabajando juntos, pero fue una gran experiencia.<br />
<br />
Luego de eso, tuve la oportunidad de crear una recetas de chef para automatizar el despliegue de código a producción y pruebas para <a href="http://shooju.com/">shooju.com</a> algo que disfrute mucho y con lo que aprendí muchísimo, principalmente sobre <a href="http://cassandra.apache.org/" target="_blank">cassandra</a> y <a href="http://www.datastax.com/what-we-offer/products-services/datastax-opscenter" target="_blank">datastax opscenter</a>.<br />
<br />
Finalmente, he estado ocupado trabajando en algunas otras cosas, pero los proyectos más interesantes para mi han sido <a href="https://www.servmio.com/" target="_blank">servmio</a> y <a href="http://www.medicos24.com/" target="_blank">medicos24</a>. Ambos proyectos son interesantes y ambos han recibido mucho de mi tiempo, esfuerzo y claro, cariño.<br />
<br />
Servmio es una plataforma que unifica los menús de varios restaurantes y nos permite realizar ordenes desde la aplicación y pedir que se entreguen en la mesa o lugar en el que estamos.<br />
<br />
Por otro lado, medicos24 es una aplicación que estoy desarrollando para <a href="http://uakami.com/" target="_blank">Uakami</a>.<br />
<br />
Además de eso, participé en 2 hackathon y en una quedamos con mi equipo en 3er lugar cuando desarrollamos en Rails <a href="http://www.picv.info/" target="_blank">picv</a> y el otro, que fue hace poco en donde desarrollamos un monedero virtual que se llama <a href="http://webapp.dwdandsolutions.com/" target="_blank">Pagos Rapidito</a>. De esté último me siento especialmente orgulloso, ya que, consiste en una API REST y clientes web, android y sms. Lastimosamente, aqui los jueces no nos evaluaron tan bien como nos hubiera gustado, parece que elaborar 4 aplicaciones distintas funcionales no en 36 horas no pesa tanto como saber vender la idea para los jurados que nos evaluaron, pero bueno...<br />
<br />
En fin, esto es todo lo que quería contarles y espero que si tienen preguntas, dudas o quieren que escriba un poco más sobre un tema específico me envíen un mensaje y yo les cuento un poco más.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-24081569736073153852013-04-29T16:48:00.003-04:002013-04-30T22:46:26.933-04:00Donaciones para Localización de OpenERPHace algunos días, alguien que quiere usar OpenERP en El Salvador, me contacto para consultarme algunas cosas respecto a como crear un catálogo de cuentas de la versión 7, etc.<br />
<br />
Así mismo, me dejo la inquietud de que probablemente existían muchas empresas en el país que estarían dispuestas a hacer donaciones para que continuara el desarrollo de la localización de OpenERP para llevarla a un punto decente.<br />
<br />
Siendo sincero, no creí que hubiera demasiado interés de muchas empresas del país por OpenERP que no pudieran costearse una consultoría de implementación, ya que, muchas empresas que conozco implementan ERP's que cuestan muchísimo dinero y otras tienen sistemas propios creados a la medida.<br />
<br />
Ahora, algunas de las sugerencias que me hacía la persona interesada en la localización hablaba de poner una página de donaciones para que las empresas interesadas puedan aportar una cantidad simbólica para el desarrollo de OpenERP adaptado a El Salvador.<br />
<br />
Mi pregunta es, hay muchas empresas interesadas?<br />
<br />
Realmente, no he continuado la localización para OpenERP, porque siempre me han salido proyectos que son mucho más rentables que la implementación en 1 única empresa, pero viendo el interés que ha surgido por el ERP, me gustaría que me comenten si estarían dispuestos a pagar una suscripción mensual para que a cambio yo dedique mi tiempo a desarrollar herramientas de instalación de OpenERP, creación de catálogos de cuentas basados en los que usan actualmente, etc. Además de video tutoriales y otros materiales para que las empresas puedan usar sin tener un conocimiento amplio sobre OpenERP.<br />
<br />
Espero sus comentarios.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-39375647163896825942012-12-29T16:34:00.002-05:002012-12-29T16:36:02.076-05:00Lo que me deja el 2012<div style="text-align: justify;">
Normalmente no acostumbro a escribir mucho sobre mi vida personal y trato de hablar sólo de temas técnicos. Este post quiero que sea diferente para contarles a las personas que se toman el tiempo de leer las cosas que publico algunas de las razones por la que he publicado poco este 2012.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Este año que termina, he tenido intención de crear muchos proyectos. Algunos de ellos están comenzados, otros sólo son una lluvia de ideas en algún documento y otros siguen dando vueltas en mi cabeza tratando de tomar forma.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Algunos de los proyectos que inicié, pero que no he podido continuar con el ritmo que me gustaría son los siguientes:</div>
<div style="text-align: justify;">
<br /></div>
<br />
<ul>
<li style="text-align: justify;"><a href="https://github.com/darkness51/fastinvoices" target="_blank">Fast Invoices</a></li>
<li style="text-align: justify;"><a href="https://github.com/dwdsolutions/amaterasu" target="_blank">Amaterasu</a></li>
</ul>
<div style="text-align: justify;">
Tal vez olvide un par, además de haber tratado de trabajar con varias empresas de mi país, El Salvador, la localización de OpenERP, software que me atrae mucho, pero al que no le dedico tanto tiempo como me gustaría, debido a que, hay que pagar las cuentas y es de momento, lo menos rentable para mi.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Particularmente, he disfrutado la parte de desarrollo de aplicaciones con Django, y he tenido la oportunidad de aprender otros lenguajes y frameworks como Ruby on Rails (después de aprender un poco de ruby), Bottle (un microframework en python), etc.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
También he dejado en la lista de espera aprender algunos lenguajes (Objetive C principalmente, pero también me interesan Lua, Earlang, etc).</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Pero quizás la parte más interesante de este año ha sido el cambio de trabajo en noviembre, hacia una empresa que desarrolla una red social (No puedo decir nombre de momento) pero en donde mis conocimientos, mis ganas de aprender e investigar son muy bien recibidos y apreciados :).</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Creo que en lo profesional el 2012 fue un buen año, tal vez, con menos ingresos que el año anterior, pero rico en experiencias, conocimientos adquiridos y tecnologías aprendidas.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Tuve la oportunidad de dar un taller de Django para <a href="http://post.mejorando.la/" target="_blank">Post Mejorandola</a>. <a class="g-profile" href="http://plus.google.com/111558546097833136355" target="_blank">+Pablo Rigazzi</a> , te agradezco mucho la oportunidad :) y bueno... para que se diviertan un rato viéndome pensar, el video es el siguiente: </div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://3.gvt0.com/vi/MkMGA_faIKs/0.jpg" height="266" width="320"><param name="movie" value="http://www.youtube.com/v/MkMGA_faIKs&fs=1&source=uds" /><param name="bgcolor" value="#FFFFFF" /><param name="allowFullScreen" value="true" /><embed width="320" height="266" src="http://www.youtube.com/v/MkMGA_faIKs&fs=1&source=uds" type="application/x-shockwave-flash" allowfullscreen="true"></embed></object></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div>
También tuve la agradable experiencia de ser invitado a algunas universidades a dar Ponencias sobre Django y Python, cosa que espero repetir este 2013. Además, espero en este nuevo año poder mostrarles nuevos proyectos, finalizar los actuales y trabajar con más gente asombrosa.<br />
<br />
Y para cerrar el 2012 con algo genial, mañana a las 7p.m méxico estaré dando un pequeño taller sobre deploy de apps Django con gunicorn and <a href="http://autodidact.as/" target="_blank">autodidactas</a>.</div>
<div>
<br /></div>
<div>
Lo más importante, me gustaría que los que se toman el tiempo de leerme, me envíen sus comentarios acerca de los temas que les gustaría ver por aqui y yo trataré de hacer tiempo para irlos desarrollando de la forma más dinámica posible para ustedes :)</div>
Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-1393495426741429562012-09-01T02:29:00.000-04:002012-09-01T02:29:01.608-04:00Primeros Pasos con Rails 3Después de un rato sin escribir quiero comentarles que he comenzado a probar Rails 3 y aunque me parece interesante, hecho en falta muchas veces la forma de hacer las cosas en Django.<br />
<br />
Una de las cosas que me ha costado bastante entender es como maneja las relaciones Active Record, con Django, todo es tan fácil como poner ForeginKey para una relación simple. Con Rails es algo así como poner en el modelo padre belongs_to y en el hijo has_many, has_one o lo que sea conveniente para el caso.<br />
<br />
En todo caso, también he visto cosas buenas, como por ejemplo, la facilidad con la que la gema simple_form integra el framework css bootstrap de twitter y muchas otras gemas que reducen bastante la cantidad de trabajo a realizar.<br />
<br />
De momento, voy a seguir creando proyectos con ambos frameworks en ambos lenguajes, ya que, quiero aprender un poco más de ruby y rails.<br />
<br />
En todo caso, me gustaría que me cuenten sus experiencias con Rails.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-45386366114092299442012-06-19T01:41:00.001-04:002012-06-19T01:41:36.730-04:00Amaterasu: Progreso IIHoy voy a comentarles los avances en lo que desde hace algún tiempo es uno de los proyectos que más me apasionan <a href="http://goo.gl/pj6hs" target="_blank">Amaterasu</a>.<br />
<br />
El día de hoy he agregado soporte para Sieve en <a href="http://roundcube.net/" target="_blank">roundcube</a>. Para los que no sepan, sieve es una especie de lenguaje de programación que nos permite realizar ciertas labores de filtrado en nuestros buzones. Para que los usuarios de mi hosting puedan hacer eso de esa funcionalidad sin recurrir a consultarme, he habilitado el plugin managesieve de dovecot.<br />
<br />
También, estoy usando <a href="http://nginx.org/" target="_blank">Nginx</a> y <a href="http://gunicorn.org/" target="_blank">Gunicorn</a> como parte importante del deploy de aplicaciones Django en mi hosting.<br />
<br />
Para las aplicaciones PHP estoy usando php-fpm con muy buenos resultados. Sólo me falta probar passenger para poder tener listo el despligue de aplicaciones ruby/rails usando amaterasu.<br />
<br />
De momento, hay un archivo fabfile.py muy básico para subir los cambios a su servidor en caso que quieran hacer un fork del proyecto e ir haciendo cambios. Espero más adelante, crear un archivo más completo que sirva de installador.<br />
<br />
Me gustaría que me den sus oponiones respecto al proyecto.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-64769463299187926322012-05-11T23:49:00.001-04:002012-05-11T23:49:47.241-04:00Progreso de AmaterasuComo les comentaba en uno de mis anteriores post, dado que la comunidad <a href="http://gnupanel.org/" target="_blank">GNUPanel</a> se está volviendo muy inactiva, me decidí a crear mi propio panel de control apegado a mis necesidades particulares y las de mis clientes. Este post es precisamente para contarles mis avances construyendo <a href="http://goo.gl/pj6hs" target="_blank">Amaterasu</a>.<br />
<br />
De momento, está en una versión muy temprana, aún no tiene un instalador propiamente dicho, pero ya he configurado con éxito el correo usando las siguientes aplicaciones:<br />
<br />
<ul>
<li>dovecot</li>
<li>postfix</li>
<li>clamav</li>
<li>spamassassin</li>
<li>saslauthd</li>
<li>PostgreSQL</li>
</ul>
<div>
También he puesto a funcionar el servicio de DNS utilizando para ello PowerDNS.</div>
<div>
<br /></div>
<div>
En la parte del servidor web, estoy pensando en utilizar nginx ya que, el servidor que uso en DWD no es demasiado potente y he escuchado muy buenas cosas sobre dicho servidor web. Espero para desplegar proyectos en Django hacer uso de Gunicorn también y poder crear configuraciones para cada uno de los sitios ya sea en PHP o Django.</div>
<div>
<br /></div>
<div>
Me gustaría saber sus opiniones al respecto y si les interesa colaborar, no duden en hacer un fork de la rama en github.</div>Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-45048221885088473252012-05-07T03:12:00.002-04:002012-05-07T03:12:49.542-04:00Panel de Control de Hosting: AmaterasuHoy he iniciado el trabajo en uno de mis nuevos proyectos. Como comentaba en un artículo anterior, he estado usando durante muchos años para los servidores de hosting que manejo en DWD&Solutions GNUPanel, pero ahora luego de algunos problemas y ver poca actividad en el foro y nula participación de los desarrolladores del proyecto, he decido crear un proyecto de panel de control de hosting basado en Django y en el cual pienso utilizar todo lo aprendido en mi tiempo desarrollando con python.<br />
<br />
Algunas de las tecnologías que me gustaría integrar en este proyecto es Celery y RabbitMQ para la gestión de tareas, como reemplazo a las tradicionales tareas programadas con cron.<br />
<br />
De momento, pienso que la primera funcionalidad del panel de control será algo sencillo: La gestión de cuentas de correo electrónico. Luego iré agregando otras funcionalidades como permitirme seleccionar los servicios que le voy a habilitar a un cliente u otro.<br />
<br />
De momento, el proyecto tiene como nombre Amaterasu y <a href="http://goo.gl/pj6hs" target="_blank">este es su repositorio en github</a> a medida avance el proyecto y si hay gente interesada en sumarse, veré si cambia de nombre o se queda con el actual.<br />
<br />
Me gustaría saber que opinan al respecto, estoy perdiendo el tiempo???Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-54768069220389830862012-04-09T13:57:00.000-04:002012-04-09T13:57:18.857-04:00Panel de Control de HostingComo todos los que siguen mi blog saben, desde hace un par de años, tengo en mi país El Salvador, una micro empresa dedicada a la venta de hosting entre otros servicios en el área de internet.<br />
<br />
No es un secreto que, para una micro empresa, no es fácil pagar las cuotas de páneles de control de hosting como cpanel o plesk, además de que, a veces, dichos paneles de control agregan una complejidad mayor al manejo de los sitios, aunque nadie puede negar la utilidad que tienen de cara al usuario.<br />
<br />
En nuestros inicios, DWD&Solutions comenzó usando para proveer hosting vhcs2 y con el paso de los meses, nos dimos cuenta que era algo dificil de mantener, poco usable y con muchos bugs. Estamos hablando de dicho panel de control en el 2006. Luego de abandonarlo, nunca probé otra vez sus nuevas versiones.<br />
<br />
Nuestro siguiente panel de control, fue GNUPanel, que, nos ha servidor desde hace varios años y con el que nos sentimos muy a gusto, salvo por el hecho que, en siempre quisimos colaborar en su desarrollo porque hay cosas que no nos gustaban.<br />
<br />
Luego de tanto tiempo con GNUPanel, se nos ha presentado un error en el servidor y por la misma naturaleza del panel de ser libre, pero no disponer de documentación, lista de desarrolladores, etc, no he sido capaz de resolver. Esto me lleva a plantearme la necesidad de crear un panel de control propio, ya que, desde hace vario tiempo tengo la inquietud, pero siempre me detiene el hecho de pensar que ya hay muchas opciones disponibles, entonces, porque no optar por una de esas????<br />
<br />
La verdad, ninguna de las opciones actuales cubren todo lo que queremos, por ejemplo, kloxo, aunque nos gusta, no dispone de un método fácil de instalación con Debian/Ubuntu que es nuestra distro principal, vhcs aunque se ha actualizado, nos dio muchas malas experiencias en el pasado y no queremos volver a repetirlas, iscpcontrol, aunque es muy bueno, obliga a hacer muchas cosas de manera que yo no las haría y así podría ir encontrando detalles a cada uno de los páneles existentes, muchos de ellos tal vez basados en subjetividades como que no se ajustan a mi forma de hacer las cosas.<br />
<br />
Además, desde hace un par de años, que desarrollo en Django y he quedado bastante enamorado de este framework, esto me llevó a preguntarme, porque no hay un panel de control de hosting basado en tan excelente framework???<br />
<br />
Sé por su blog que el panel de control de Webfaction está basado en django y me gustaría poder reproducir la experiencia creando nuestro propio panel de control o buscando uno que esté basado en dicho framework o en Ruby on Rails.<br />
<br />
Al final, me encantarían sus opiniones.<br />
<br />
Estoy loco por querer crear una nueva opción de panel de control libre???Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com2tag:blogger.com,1999:blog-8829880003194374224.post-61300846961924126252012-03-10T01:52:00.001-05:002012-03-10T01:53:09.611-05:00Revertir los cambios de un único archivo con gitActualmente me encuentro trabajando en un proyecto usando git. Resulta que hace poco, se unió al equipo un desarrollador y mi sorpresa viene, cuando al revisar el código me encuentro con que, ha cambiado las plantillas principales de la aplicación en django y esos cambios ocasionaron que las vistas que ya estaban creadas no funcionaran ya correctamente.<br />
<br />
Buscando un rato por internet, me encontré con que el comando para revetir los cambios de un commit en un único archivo es el siguiente:<br />
<br />
<b><i>git checkout sha1 ruta/archivo</i></b><br />
<b><i><br /></i></b><br />
Personalmente, no me siento cómodo con el comando, porque es el mismo que se ocupa para cambiar entre ramas en git.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-35172826479878102622012-02-09T23:51:00.002-05:002012-02-09T23:51:38.462-05:00Fast Invoices<div style="text-align: justify;">
El día de hoy, hablando con un amigo, me comento que en su micro empresa, tenían la necesidad de implementar herramientas que les facilitaran el trabajo. Desde hace un año aproximadamente, ellos estaban usando <a href="http://www.simpleinvoices.org/">Simple Invoices</a>, aplicación creada en PHP a la cual le hice algunas correcciones cuando comenzaron a usarlas y ahora, requerían agregar funcionalidades.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Como todo enamorado de Python y Django, se me ocurrio proponerle la idea de desarrollar algo nuevo desde cero y es así como comenzamos en el mismo momento a desarrollar <a href="http://goo.gl/ni5oX">Fast Invoices</a>.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Algunas de las razones que me llevaron a proponer crear una nueva aplicación y no continuar trabajando con Simple Invoices es una razón meramente personal y es que odio con todo el corazón Smarty, que es el sistema de plantillas que usa el software anterior.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
De momento <a href="http://goo.gl/ni5oX">Fast Invoices</a> se encuentra en una etapa muy temprana de desarrollo, pero ya he creado todos los modelos que creo voy a necesitar y también he agregado soporte para traducciones a varios idiomas.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Creen ustedes que sea útil un nuevo sistema de Facturación simple de usar y fácil de personalizar con un lenguaje de plantillas como el de Django???</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Espero sus comentarios al respecto :)</div>Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-62839029585538512362012-01-31T21:06:00.002-05:002012-01-31T21:06:44.931-05:00Aprendiendo ruby<div>
<div style="text-align: justify;">
Desde hace un par de años he tenido curiosidad por el lenguaje de programación ruby. En el 2009 cuando buscaba aprender un lenguaje para automatizar ciertos procesos rn lis servidores que administro, lo revise por encima, pero viniendo de lenguajes de programación basados en C su sintaxis no terminó de convencerme.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Ahora con lo mucho que he visto la popularidad de ruby y su uso en muchos grandes proyectos, me he decidido aprenderlo. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Algunos de los recursos que estoy usando son los siguientes:<br />
<br />
<ul>
<li>http://www.trybloc.com/#/1</li>
<li>http://www.maestrosdelweb.com/editorial/ruby/</li>
</ul>
<div>
Espero que les sirva de mucho a todos los que quieren aprender este interesante lenguaje en auge.</div>
<div>
<br /></div>
<div>
Saludos.</div>
</div>
</div>Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-38820827143284041202012-01-17T14:53:00.000-05:002012-01-17T14:53:05.906-05:00Deshacer el último commit en GitEl día de hoy, trabajando con un repositorio de una aplicación con django-nonrel y GAE (Google App Engine) cometi el error de aplicar el parámetro -a al comando commit, quedando de la siguiente manera:<br />
<br />
<i>git commit -m "mensaje" -a</i><br />
<i><br /></i><br />
Al ejecutar el comando de esa forma, un archivo que no quería que se agregara al commit para subir al repo, se agregó automáticamente, porque había sido modificado.<br />
<br />
Buscando en google, encontré que el comando para deshacer un commit en git es el siguiente:<br />
<br />
<i>git reset --soft HEAD^</i><br />
<i><br /></i><br />
Como se que no soy el primero en necesitar hacerlo, la búsqueda fue sencilla y encontré dicho comando en <a href="http://coloresefimeros.com/2011/06/28/recetas-git-deshacer-el-ultimo-commit/">esta url</a>. Agradezco al autor por el tiempo que se tomó en publicar esto y además aprovecho para crear esta entrada en mi blog, como un apunte de algo importante que no quiero olvidar.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-8947059371565552582011-10-30T23:59:00.003-04:002012-01-29T13:18:11.653-05:00Nexxt Lynk 300 con chipset Ralink RT3072 en Kubuntu<div><p><br>
Tengo una tarjeta de Red Inalámbrica USB para mi computadora de escritorio DELL, es una Nexxt y bueno, siempre olvido los pasos para hecharla a andar.</p>
<p>Hay que agregar en el archivo /etc/modprobe.d/backlist.conf las siguientes líneas:</p>
<p># Ralink cards<br>
blacklist rt2x00usb<br>
blacklist rt2x00lib<br>
blacklist rt2800usb</p>
<p>Guardamos y reiniciamos y con eso podremos hacer que la tarjeta sea reconocida correctamente.<br><br></p>
</div>Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0tag:blogger.com,1999:blog-8829880003194374224.post-29295215510614304492011-10-25T09:16:00.001-04:002011-10-25T09:19:41.139-04:00Heroku + Play FrameworkDesde hace días, estoy trabajando en un nuevo proyecto, que si bien no es de mis proyectos habituales con lenguajes que me gustan como Python, PHP u otro lenguaje de scripting, he encontrado algunas herramientas que me parecen interesantes.<br />
<br />
Hace tiempo, si mal no recuerdo, publiqué una entrada en este blog sobre un framework en Java llamado Play y bueno, por motivos laborales hoy me ha tocado comenzar a utulizarlo más a fondo.<br />
<br />
Play vendría siendo el equivalente a Django en Java salvando las distancias y claro, Django sigue siendo un framework mucho más completo en mi humilde opinión.<br />
<br />
Otra de las herramientas que más me ha gustado en este proyecto es Heroku y es que Heroku nació como una plataforma para alojar sitios creados con el famoso Ruby on Rails, pero que ahora incorpora soporte para muchos más lenguajes, entre ellos Java y Scala.<br />
<br />
Desplegar una aplicación creada con Play en Heroku es tan fácil como hacer:<br />
<br />
<i>git push heroku master</i><br />
<i><br /></i><br />
Y lo mejor es que Heroku cuenta con una herramienta de línea de comandos que te permite supervisar el funcionamiento de tu aplicación y sobre todo, las 750 horas gratis que te dan al mes :).<br />
<br />
Espero que lo prueben y me cuenten sus impresiones al respecto.<br />
<br />
Saludos.Anonymoushttp://www.blogger.com/profile/04847728428719634953noreply@blogger.com0