Facebook, otro caso de éxito Open Source
Para muchos de nosotros, no es ningún secreto que muchas de las grandes empresas utilizan Software Libre y Open Source de forma bastante extensa y exitosa. Uno de esos casos de éxito es Facebook, la red social mas grande del mundo, con mas de 500 millones usuarios y que maneja unos 30 mil millones de objetos al mes según sus propias estadísticas.
Para aguantar semejantes cargas de trabajo, manejar titánicas cantidades de información y ser escalable en el tiempo, Facebook se vale del Open Source. Como es de esperar, la base de esta gigantesca infraestructura, son los servidores LAMP (Linux, Apache, MySQL y PHP) aunque con algunas variantes y añadidos propios muy interesantes.
Como señalan en una de sus paginas informativas, Facebook utiliza “Apache Cassandra” como sistema de almacenamiento distribuido, el cual les permite escalar fácilmente y a la vez no tener un punto único de fallo. Además han integrado al kernel Linux el modulo “FlashCache“, como apoyo para el sistema de archivos. Y una de sus piezas claves es el Framework “Tornado“, que les permite manejar varias conexiones simultáneamente, para que sus usuarios puedan trabajar en la red en “tiempo real”.
Por supuesto, poseen varias otras herramientas muy importantes como Apache Hadoop, Scrib, Thrift y una que encontré muy interesante: HipHop for PHP, que transforma lenguaje PHP en C++ altamente optimizado. Pero estos chicos además hacen algo muy importante, contribuyen con otros proyectos Open Source, como memcached, Cfengine, MySQL y el mismísimo PHP. En esta otra pagina (una wiki), hablan más sobre los proyectos de código abierto.
Mas allá de que Facebook sea cerrado (a diferencia de Diaspora), es una organización que se vale del Open Source y a su vez colabora con él, algo bastante ejemplar (dentro de ese contexto), y que nos muestra la importancia de, no solo utilizar, sino también retribuir algo de lo conseguido del código abierto, con trabajo y esfuerzo propio. Pero sin duda, lo que resulta especialmente destacable para nosotros, es la gran potencia que demuestra el Open Source, a la hora de servir de plataforma para servicios masivos y de alta disponibilidad, sin el cual difícilmente podría sustentarse esta gigantesca red social.
Así es que ya lo saben, no es necesario invertir en costosos sistemas operativos cerrados, servidores web, bases de datos y amarrarse a cosas como ASP.net, para poder ofrecer servicios web de calidad (y en gigantesca cantidad).
Sino mas bien, aprovechar el software Open Source existente, desarrollar lo necesario para lograr el producto final y contribuir con el ecosistema de código abierto para continuar con el ciclo y seguir mejorando. Creo que, dejando de lado temas de privacidad y otros asuntos controvertidos, Facebook es otro ejemplo y caso de éxito del Open Source.












Odio Facebook, le carcome la mente a la gente, sin embargo, de alguna manera me “alegra” que se base en el codigo abierto y mas aun que contribuya con el
Hay mil redes sociales mejores que Facebook la verdad que si. Además que no tiene un diseño peor porque no se han esforzado, pero lo conseguirán xd
Pero hasta ofuscan la tontería de sus javascript.
No me esperaba que Facebook contribuyese al software libre es una buena noticia. Personalmente lo que mas me gusto es que facebook decidiese usar el protocolo XMPP para su chat.
Debo agregar un dato y es que HipHop y Cassandra comenzaron a desarrollarse como proyectos internos de Facebook y luego esta empresa los lanzo como OpenSource, ya ven hasta los malignos de Facebook contribuyen al OSS. HipHop no se porque no programo mucho en PHP, pero Cassandra es un excelente proyecto y lo utilizamos en el trabajo.
Ah si otro dato, Cassandra solo almacena parte de la data, no recuerdo bien pero creo que es el sistema de Likes, la data rapida la almacena memcached (excelente proyecto) temporalmente y lo demas o la data fuerte que no recipe tantas llamadas creo que todaiva la guardan en MySQL.
@juan
El javascript se ofusca para que ocupe menos y de esa manera el sitio cargue mas rapido. Ofuscado no tiene espacios en blanco o retornos de carro innecesarios, y los identificadores son siempre cortos (a1,a2,z7, etc). Claro, puede que también les guste ofuscarlo para que no se lo copien, pero en principio es una técnica muy usada por todos.
Interesante sabia que tienen varios aportes pero no basaban toda su estructura en open source
al menos aunque “roben” datos parece que estan seguros xDD
aunque bueno, peor me parece el sistema de aplicaciones que practicamente motiva a los usuarios y empresas externas a hacerlas para robar datos
en fin, bien por facebook, otro grande de internet que usa y contribuye en soluciones OpenSource
Google Facebook Etc. Empresas que se hacen ricas en base a lo libre o lo que seria igual convierten lo libre en privativo.
No has entendido nada
Usan software OPENsource porque justamente, es OPEN (pueden abrirlo, modificarlo y saber que pasa con sus datos) Y si, PAGAN por el, porque pagan sueldos a sus empleados y las mejoras las largan a la comunidad, así que tan malo no es que usen software OPEN
Facebook apesta no me gusta como funciona, prefiero el irc de toda la vida.
vicente, como que no entiendes la diferencia entre mensajeria instantanea y redes sociales cierto ?
Usan OpenSource en muchos casos porque es lo que comenzaron usando (no empezaron con millones de usuarios) o simplemente es la mejor solución técnica. Pero para nada es algo ético, y si lo parece es porque lo hacen a propósito para hacer publicidad.
Es una empresa, si hubiese una mejor solución privativa y que no les castigase mucho su imagen ya estarían usándola.
Si es una empresa que hace bien al opensource no es porque así lo deseen, simplemente es un efecto colateral de su misión de ganar dinero.
La empresa no lo hace por ética, sino por técnica.
Básicamente, es bueno que lo usen, pero no son buenos por usarlo.
pues bien, asi se nota que es rentable :D
El software “Open Source” ya estaba abierto, lo que pueden hacer es usar el software “Open Source” y cerrarlo para que las mejoras que le hagan a ese software no la pueda ver cualquiera.
El comentario anterior iba en respuesta al comentario numero 9 creado por Pepe_uy del dia 3 de septiembre del 2010 a las 8:01 pm.
@wcd6: entonces, se puede cerrar algo que esta hecho en base a la GPL? (que supuestamente protege versiones posteriores que tambien DEBEN ser libres) ¿como es eso? no entiendo mucho……… Para mi si yo hago X programa y lo libero como openSOURCE bajo la GPL, y mañana sale un fork, dicho fork DEBE seguir respentando la licencia anterior GPL y DEBE hacer referencia al programa anterior (y las mejoras deben ser reportadas al creador del programa original, eso tengo entendido que alguien me corrija) Por lo que entiendo Lo que esta bajo la GPL, no se puede modificar y cambiar a otra licencia. No se debería poder, sino se pierden las 4 libertades de GNU….. Que alguien que entienda mas que yo posteee y corrija. GRACIAS
Si es que te corrijen, entonces yo tambien entendi mal por que es como segun creo que asi es. Otra cosa seria con las licencias BSD. Donde no necesariamente el software, que se derive de otro que tiene una licencia BSD, no necesariamente tiene que tener una BSD tambien.
Vease el caso del Sistema Operativo OSX ;).
->Hace tiempo a la Universidad vinieron unas gentes de Apple a dar una platica y se me ocurrio preguntarles en que sistema operativo se habian basado para sacar OSX. Y lo que me respondio fue: “OSX esta basado en FreeBSD”
…y como todos sabemos, OSX no es open source xD
Bueno es algo complicado pero se le puede jugar “sucio” a la GPL, tomo como por ejemplo a Google.
Google forkeo el kernel Linux y publico sus “mejoras” en su propio tree, por no incorporar los updates del mainstream kernel estos se volvieron incompatibles asi que en escencia no son el mismo kernel Linux con todo y que Google lo sigue llamando Linux no son lo mismo. Ahora digamos que 100% de las distros y OS rivales moviles que utilizan el kernel Linux se van al mainstream kernel y nadie (quizas uno o dos fuera de Google) envia update al tree de Google es practicamente lo mismo que estuviese cerrado aunque por licencia no lo este, en mi opinion un software solo importa si es abierto si mas personas estan tomando el codigo fuente y haciendo algo mas que correr como vino de “fabrica”, esa es mi opinion no colaboracion de externos pos es lo mismo que fuese cerrado.
Podes cerrar el codigo que esta bajo la licencia GPL al igual que podes cruzar la calle en rojo.
Cerrar un código publicado bajo una licencia GPL violaría los términos de la licencia, ya que esta estipula que cualquier trabajo basado en este debe ser publicado bajo la misma licencia. Al igual que cuando cruzas la calle en rojo, estarías infringiendo la ley.
Claro esta, que existen muchas licencias de software libre que no tienen copyleft, y que si permiten que el código sea cerrado.
El comentario anterior iba en respuesta al comentario de Pepe_uy del dia 4 de septiembre del 2010 a las 7:50 pm.
Estas “contribuciones” ni llegan a ser migajas comparando con las enormes ganancias que genera el lucrativo negocio de la apropiacion agresiva de datos de los usuarios. Ademas como si la privacidad fuera poco, les ponen precio a los juegos o aplicaciones.
esa es la idea, contribuir de la forma que fuese asi sea aprovechandose del mismo, al final la idea es demostrar que es factible ^^
#ninjamon: Justamente, aplica eso a un gobierno, institución o empresa. Obviamente no hay que actuar tan mal, de hecho tampoco me gusta Facebook (ni tengo cuenta siquiera), pero el objetivo de mostrar los “casos de éxito” es ese, demostrar el potencial que se posee de parte del Open Source y el Software Libre.
Ademas en este caso, logró un desarrollo sustentable y rentable, algo que muchas veces se toman como “debilidades” del modelo de código abierto, yo tomo estos casos (y escribo cosas como estas) a modo de hacer anti-FUD. De pronto también, alguien se anima a sacarle partido a los sistemas distribuidos que existen actualmente.
Me apresure, no lo habia visto de ese modo… esta bien,… al menos hasta que le encuentre el pelo a la sopa xD