#codescience
Explore tagged Tumblr posts
Text
Behind The Code 001
Todos tenemos ese amigo que estudio computación y se nos hace interesante la manera en que nos habla de sus líneas de código, pero. ¿Realmente le entendemos cuando nos quiere dar a entender un punto?, debido a esto he decidido hacer una serie de post en mi tumblr para explicar desde cero algunos lenguajes de programación, su funcionamiento y en que lo emplean tanto developers como las mismas empresas.
¡Empecemos!
¿Qué es un lenguaje de programación?
Sí bien existen diferentes definiciones sobre lo que es un lenguaje de programación, usaremos la siguiente definición para continuar:
“Un lenguaje de programación es un lenguaje formal que especifica una serie de instrucciones para que una computadora produzca diversas clases de datos. Los lenguajes de programación pueden usarse para crear programas que pongan en práctica algoritmos específicos que controlen el comportamiento físico y lógico de una computadora.
Es decir, la programación es el idioma propio de la computación, puede decirse que la programación le indica al programa informático qué acción tiene que llevar a cabo y cuál es el modo de concretarla.
Breve Historia.
Charles Babbage, conocido como el Padre de las computadoras, diseñó una máquina totalmente capaz de realizar cualquier tipo de cálculo matemático este la llamo: la Máquina Analítica. Aunque la máquina analítica no fue construida hasta 150 años después por el Museo de Londres, Ada Lovelace fue la primer persona que se interesó por la inexistente máquina de Babbage y desarrolló un algoritmo capaz de ser utilizado en ella. Ada Lovelace es considerada como la primer programadora de computadoras de la historia.
La programación formal no nació sino hasta los 50s. Algunos de los lenguajes de esa época han quedado en el olvido, pero otros más siguen figurando hasta nuestros días. Han sabido ganarle la batalla al tiempo y seguir dando lata, siendo aún muy favoritos por muchos.
1957 - 1959
Fortran (Formula Translation)
LISP (List Procesor)
COBOL (Common Business-Oriented Language)
Considerados los lenguajes más viejos utilizados hoy en día. Son lenguajes de alto nivel que fueron creados por científicos, matemáticos y empresarios de la computación.
Principales usos: Aplicaciones para supercomputadoras, desarrollo de Inteligencia Artificial, software empresarial.
Usados por: NASA, tarjetas de crédito y ATMs.
1970
Pascal (nombrado así en honor al matemático y físico Francés Blaise Pascal)
Lenguaje de alto nivel. Utilizado para la enseñanza de la programación estructurada y la estructuración de datos. Las versiones comerciales de Pascal fueron ampliamente utilizadas en los años 80s.
Creador: NiKlaus Wirth
Principales usos: Enseñanza de la programación. Objet Pascal, un derivado, se utiliza comúnmente para el desarrollo de aplicaciones Windows.
Usado por:Apple Lisa (1983) y Skype.
1972
C (Basado en un lenguaje anterior llamado “B”)
Lenguaje de propósito general, de bajo nivel. Creado por Unix Systems. Es el lenguaje más popular (precedido por Java). De él se derivan muchos lenguajes como C#, Java, Javascript, Perl, PHP y Phyton.
Creador: Dennis Ritchie (Laboratorios Bell)
Principales usos: Programación multiplataforma, programación de sistemas, programación en Unix y desarrollo de videojuegos.
Usado por: Unix (reescrito en C en 1973), primeros servidores y clientes de la WWW.
1983
C++ (Formalmente “C con clases”; ++ es el operador de incremento en “C”)
Lenguaje de nivel intermedio, orientado a objetos. Una extensión de C con mejoras como clases, funciones virtuales y plantillas.
Creador: Bjarne Stroustrup (Laboratorios Bell)
Principales usos: Desarrollo de aplicaciones comerciales, software embebido, aplicaciones cliente-servidor en videojuegos.
Usado por: Adobe, Google Chrome, Mozilla Firefox, Microsoft Internet Explorer.
1983
Objective-C (Object-oriented extension de “C”)
Lenguaje de propósito general, de alto nivel. Ampliado en C, adicionaba una funcionalidad de paso de mensajes.
Creador: Brad Cox y Tom Love (Stepstone)
Principales usos: Programación Apple.
Usado por: macOS e iOS
1987
Perl (“Pearl” ya estaba ocupado)
Lenguaje de propósito general, de alto nivel. Creado para el procesamiento de reportes en sistemas Unix. Hoy en día es conocido por su alto poder y versatilidad.
Creador: Larry Wall (Unisys)
Principales usos: Imágenes generadas por computadora, aplicaciones de base de datos, administración de sistemas, programación web y programación de gráficos.
Usado por: IMDb, Amazon, Priceline, Ticketmaster
1991
Python ( en honor a la compañía de comedia británica Monty Python)
Lenguaje de propósito general, de alto nivel. Creado para apoyar una gran variedad de estilos de programación de manera divertida. Muchos tutoriales, ejemplos de código e instrucciones a menudo contienen referencias a Monty Python.
Creador: Guido Van Rossum (CWI)
Principales usos: Aplicaciones Web, desarrollo de software, seguridad informática.
Usado por: Google, Yahoo, Spotify
1993
Ruby (La piedra del zodiaco de uno de los creadores.)
Lenguaje de propósito general, de alto nivel. Un programa de enseñanza, influenciado por Perl, Ada, Lisp, Smalltalk, entre otros. Diseñado para hacer la programación más productiva y agradable.
Creador: Yukihiro Matsumoto
Principales usos: Desarrollo de aplicaciones Web, Ruby on Rails.
Usado por: Twitter, Hulu, Groupon.
1995
Java (inspirado en la taza de café consumida mientras se desarrollaba el lenguaje)
Lenguaje de propósito general, de alto nivel. Hecho para un proyecto de televisión interactiva. Funcionalidad de programación multiplataforma. Es actualmente el segundo lenguaje de programación más popular en el mundo.
Creador: James Gosling (Sun Microsystems)
Principales usos: Programación Web, desarrollo de aplicaciones Web, desarrollo de software, desarrollo de interfaz gráfica de usuario.
Usado por: Android OS/Apps
PHP (Formalmente: “Personal Home Page”, ahora es por “Hypertext Preprocessor”)
Lenguaje de código abierto, de propósito general. Se utiliza para construir páginas web dinámicas. Más ampliamente usado en software de código abierto para empresas.
Creador: Rasmus Lerdorf
Principales usos: Construcción y mantenimiento de páginas web dinámicas, desarrollo del lado del servidor.
Usado por: Facebook, Wikipedia, Digg, WordPress, Joomla.
Javascript (Última elección después de “Mocha” y “Livescript”)
Lenguaje de alto nivel. Creado para extender las funcionalidades de las páginas web. Usado por páginas dinámicas para el envío y validación de formularios, interactividad, animación, seguimiento de actividades de usuario, etc.
Creador: Brendan Eich (Netscape)
Principales usos: Desarrollo de web dinámica, documentos PDF, navegadores web y widgets de Escritorio.
Usado por: Gmail, Adobe Photoshop, Mozilla Firefox.
0 notes
Link
How to Fast Track your AppExchange App 1. How to Fast Track Your App (And Move With Lightning Speed) Jeff Goree, Director of Sales, CodeScience Rob Jacques, Product Manager, CodeScience @jgoree, [email protected] @inittowinit210, [email protected] 2. Back to the Future A.D. 2014 Connect and Sell from Anywhere 3. Back to the Future A.D. 2015 4. “It’s a world of laughter, a world of … Apps?” it’s a small world after all 5. A Brief History of Software Abridged Mainframe 70’s Dot-Com 00 PC’s 80’s Client Server 90’s Apps SaaS05 Web 2.004 6. It’s a quiet riot “Come on feel the noise” 5.5 Million+ In house applications, SI developed applications 3,100+ AppExchange Apps 7. Your Next Competitors 8. Lattice Engines Target the Right Accounts with Predictive Launched their product to the Fortune 500 in just months 9. Reinvented their app in 2015 and tripled their deal size SpringCM Your Revenue Accelerated 10. How did they do it? 11. Focus on building a business Not just an app 12. Don’t spend all your money on your features • 32% Sales and Marketing • 24% R&D Cost Structure of App Companies Growth Mode R&D G&A COGS Sales and Marketing Source: Pacific Crest Securities – 17th Annual Global Technology Leadership Forum 13. Work with people who fall in love with your application problem space. Plan The best partners help you find the best way forward to meet your business objectives You bring the domain expertise and your partner focuses it towards strong & reliable app. delivery Inception Phase 14. Full user experience design is critical, even for integration apps. SFDC Side Personas Customer Journey Design Our Unicorn SquadTM specializes in rapid prototyping your designs for customer feedback and build. We call them Design Sprints. Inception Phase Come see us showcase a Design Sprint LIVE 10/7 9:00 am-12:00 PM Park Central Hotel, Franciscan Ballroom 15. Discover Spend the time to analyze and design your full application architecture taking security concerns and the Salesforce security review in mind as a first principle. Scan your API’s early. Agile delivery does not mean unplanned! Product Managers and Product Owners perform detailed analysis for functional package design. Utilize Product Management principles to get a MVP to market, fast. Get the most efficient capital spend possible for your application investment. Inception Phase 16. Testing, both unit and user, must be a first-class citizen. Automate that which is automatable. Use test expertise for the rest! Build and Test Build is the most critical time of your application, the transformation of ideas and strategy into real working software. This is the threshold between cheap and expensive change. Does your development team know what to do? Construction Phase 17. Utilize the tools available to treat your application marketing with the importance it deserves. Journey builder is an amazing tool for reaching your audience with targeted messaging over time. Market Content is king! Align your AppExchange listing, PR campaigns and other marketing efforts vertically. The strongest impact comes from an aligned and repeated message. Transition Phase 18. Your commercial agreement with Salesforce can have a large impact on your revenue model. Plan it and pro-forma possible scenarios to be sure of your business plan success. Distribute Utilize native AppExchange distribution mechanisms to help your effort. There are also package apps to consider which can your distribution easier on your operations team. Journey Builder for customer onboarding can do wonders to your customer conversion rate! Transition Phase 19. Consider your channels when designing your sales process. Do you need inside sales to perform pipeline management? Do you need sales support such as Field Sales & Technical Sales due to app complexity? Sell Transition Phase 20. Some applications require complex implementation process. If your organization doesn’t have system integration capability, you may consider a SI partner to handle that aspect. Implement Don’t ignore the possibility of a SI partner and the strong revenue stream that it can provide with enhanced capacity. System Integration is a core competency and a skill in its own right. Transition Phase 21. Support must be effortless for your customers. Open the lines of communication via a customer community implementation associated to your business org. Be sure to staff the management appropriately and prepare for scale as your app grows. Support The #1 enemy of lifetime value is churn. Good support can be one of your best ways to intercept a churning customer. Even small efforts such as personal touch and constant communication when that inevitable bug arises can prevent a customer from leaving you. Transition Phase 22. Does it work? 23. We are extremely proud to announce that our app is being used by 10,000 sales reps within the first 6 months of our launch, creating more pipeline for customers at a rate of 2x. Shashi Upadhyay, Ph.D CEO, Lattice Engines 24. We now have a framework in place that lowers our costs and increases our ability to deliver needed functionalities -- and, most important, we’re consistently conveying a message to our customers that we can respond to their feedback, faster. Chris Van Horn Senior Product Manager, SpringCM 25. Your efforts have single handedly changed the paradigm of our application. The curb appeal of our tool just put us into a whole new neighborhood. Rick Pensa Founder and CEO, CPGToolBox 26. Working with CodeScience allowed us to bring a product to market 40% faster than we would have been able to if we tried to do all our APEX-based Force.com development and security reviews ourselves. Boris Grinshpun VP Sales & Marketing/Co-Founder, Terafina 27. Appendix A 28. From educating our team on Salesforce to the design and build process, CodeScience has been an invaluable member of our team from day one. We could not have brought the Provider MasterFile to market without them. Theresa Greco Sr. Vice President, Solution Development and Strategy, Health Market Science 29. CodeScience has been an integral part of one of the most complex and exciting projects our company has ever undertaken. Their expertise on elaborate custom interfaces and system integration has been the perfect complement to our industry-leading technology and experience. A Riskonnect and CodeScience 1-2 punch has been a powerful partnership for both companies’ arsenals. Bob Morrell CEO and Co-Founder, Riskonnect 30. Their folks bring all the necessary expertise in modern client-side technologies and enterprise-scale architectures to help accelerate our product development. Dory Weiss Director of Engineering, nCino 31. Thank Y u
0 notes