Nested Web Application Components Framework a Comparison to Competing Software Component Models

Total Page:16

File Type:pdf, Size:1020Kb

Nested Web Application Components Framework a Comparison to Competing Software Component Models Nested Web Application Components Framework A Comparison to Competing Software Component Models Svebor Prstačić and Mario Žagar Faculty of Electrical Engineering and Computing, University of Zagreb, Unska 3, Zagreb, Croatia Keywords: Componentization, Framework, Component Nesting, Web Content Management System, Web Application, Comparison, Component based Software Engineering. Abstract: There are many approaches and component models for Web application component development, of varying complexity, for different platforms using different technologies. All of which have a common problem – constrained component reusability. In this article, we summarize common software component reusability shortcomings of the most popular frameworks and component models they provide, and compare against the solution our own approach “framework as a component” provides to improve reusability. 1 INTRODUCTION tectural units – that provide a specific functionality to users, ie. a reusable forum application, built from In software engineering, there is no shortage of many classes, class libraries, user interface tem- component models. Almost every development plates, functions etc. Each such component can be framework, complex application or system defines thought of as a Web application in itself, and our, its own component model and provides ways to im- previously introduced, framework (Prstačić et al., plement components. Unfortunately, this makes 2011) focuses on improving such components' reuse. component implementation simple, and component We defined a component model such that com- portability and reuse difficult. Components, once ponents can nest, even recursively, and be more easi- implemented, exist only inside a single framework ly reused even within other applications built using that defines them (Wallace, 2010). As a conse- different frameworks. Our testbed implementation is quence, similar or identical functionality is imple- done in PHP, but the model can be applied to other mented over and over again using many different technologies as well. frameworks because none of the existing frame- The framework in question is designed to be works focus on or try to provide inter-framework simple to reuse and integrate into an arbitrary Web interoperability. application, as a component. Such an application we Reusable components are inherently abstract, and call the host application, ie. a blog application could harder to engineer, so making complex components be easily extended to provide commenting function- reusable is very hard. As a result, most components ality for blog posts, and to enable attaching photo forgo reusability for ease of maintenance and im- galleries to blog posts. The same same commenting plementation (Schmidt, 1999). This makes reuse of component could be simply reused to provide com- components, even across applications that are creat- menting functionality for the photo gallery compo- ed using the same framework complex or even im- nent. possible. When such integration of the framework and the Component based software engineering defines host application is achieved, all the components im- two component model types: models that define plemented for our framework become reusable in the components as objects in object-oriented program- host application, which considerably improves those ming, and the more complex components that con- components' reusability. Because of this property, stitute of multiple classes or other code constructs we call our framework the extensions framework and (Lau and Wang, 2007; Broy et al., 1998). These, components built for it extensions. more complex components, can be defined as archi- In this paper we identify accepted component prop- erties defined in the literature, that contribute to Prstaciˇ c´ S. and Žagar M.. 149 Nested Web Application Components Framework - A Comparison to Competing Software Component Models. DOI: 10.5220/0004421401490156 In Proceedings of the 8th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE-2013), pages 149-156 ISBN: 978-989-8565-62-4 Copyright c 2013 SCITEPRESS (Science and Technology Publications, Lda.) ENASE2013-8thInternationalConferenceonEvaluationofNovelSoftwareApproachestoSoftwareEngineering components' reusability, and compare our own re- classes. Reuse of such components is easiest to sults in this area, to some of the most popular com- achieve, but functionality that such components pro- ponent models and approaches to component reuse vide is minimal compared to an architectural unit that they provide. type of components. To enable component reusability in other appli- cations or frameworks, software adapters (Bishop, 2 SOFTWARE COMPONENT 2007) can be employed. Software adapters translate required interfaces of one component to provided MODELS interfaces of another component. This is obviously inefficient and potentially very complex and has led One of the pervasive needs of software development to implementation of very simmilar components for is increase of speed and reliability of both software various frameworks. development process, and the software created. Ben- efits that component-based software development 2.1 Nested Framework Component (CBD) promises through reuse of well tested com- Model ponents, with well documented and defined func- tionality, it should be possible to create new soft- Our framework makes runtime and design-time as- ware, combining and connecting existing software sembly of components possible, which is discussed components instead of implementing the same func- further in section 4. It makes assembly of nested tionality over and over again. Unfortunately, current components possible, ie. a forum component that component models fail to deliver on promises of extends the functionality of that same forum compo- CBD (Lau and Wang, 2007; Bose, 2011). This is nent. This makes possible the creation of a forum to evident in many very similar components that have debate a single forum post or topic, which is dubi- been implemented over and over again for most ously useful in itself, but in some cases could be, ie. popular frameworks in existence – a simple Google using a commenting application nesting to enable query for a word “forum” in addition to the frame- comment replies, while the component itself pro- work name of choice will always yield results. vides only the simple, basic functionality. This is because software components are always To achieve this, it provides both abstract classes built for a specific framework or application that and objects as base building blocks for component uses a component model, which defines what a development. Use of these building blocks, for ex- software component is, how it can be constructed, ample, provides simple access to host application's composed or assembled and finally deployed (Wal- execution context (Prstačić et al., 2011) with rele- lace, 2010; Lau and Wang, 2007; Crnković et al., vant data commonly found in Web applications 2011). Depending on the framework, components (Prstačić et al., 2012) – user session, current user can vary in possible complexity and functionality. data, current user permissions etc., are all translated If a component is built for a specific application, by the framework and provided to extensions in a it can be thought of as an architectural unit, and such form that they can use. Integration of the framework a component can span through many layers of the into the host application involves implementation of application, consisting of many classes and other abstract classes that are essential to providing this code or binary constructs. Components built for a translated execution context. specific application are easy to reuse, but only inside Once implemented, components can be used to other instances of the same application. extend existing applications, that were built using a Similarly, components built for a specific different framework, with minimal effort. This is framework are also architectural units, or even ap- possible because our framework is designed and plications themselves. When reuse of such compo- built as a component that is ready to be integrated nents is intended inside another application, that into arbitrary Web applications that we call host ap- uses the same framework, required programming plications. When this integration is achieved, reusing effort can be significant. The more complex the any component of the framework is possible using a component, the harder reuse is. Although reuse can single line of code, as discussed further in section be complex, it is significantly less complex than 4.2. reusing architectural unit type components built for a specific application, inside another application. Thirdly, in object oriented programming, the most simple components are classes, or libraries of 150 NestedWebApplicationComponentsFramework-AComparisontoCompetingSoftwareComponentModels 3 POPULAR COMPONENT 3.1.1 ASP.NET MVC 3 MODELS PROVIDED ASP.NET MVC 3 (Prstačić et al., 2011; MSDN, BY THIRD PARTY 2003) is the newest component model available in FRAMEWORKS ASP.NET. It provides an alternative way to define Web application components: a “Razor” template There are many component models in existence, and engine, which strongly resembles Smarty (Prstačić et frameworks built to provide component based Web al., 2012; Smarty, 2012) for PHP, both in syntax and application development. Each defines what a com- the way it is used. Razor also provides “HTML ponent is, and even a superficial
Recommended publications
  • The Definitive Guide to Grails
    apress.com Graeme Rocher, Jeff Scott Brown The Definitive Guide to Grails This will be the first and only definitive book on the agile open source lightweight Grails (“Groovy on Rails” analogous to Ruby on Rails) Framework 1.0 release Written by the open source Grails project founder and lead, Graeme Rocher Emerging growth area with support from key open source lightweight projects like Spring, Hibernate, Wicket and more The rise of Ruby on Rails has signified a huge shift in how we build web applications today; it is a fantastic framework with a growing community. There is, however, space for another such framework that integrates seamlessly with Java. Thousands of companies have invested in Java, and these same companies are losing out on the benefits of a Rails–like framework. Enter Grails. Grails is not just a Rails clone. It aims to provide a Rails–like environment that is more familiar to Java developers and employs idioms that Java developers are comfortable 2nd ed., 648 p. using, making the adjustment in mentality to a dynamic framework less of a jump. The concepts within Grails, like interceptors, tag libs, and Groovy Server Pages (GSP), make those in Printed book the Java community feel right at home. Grails' foundation is on solid open source technologies Softcover such as Spring, Hibernate, and SiteMesh, which gives it even more potential in the Java space: 39,99 € | £36.99 | $46.99 Spring provides powerful inversion of control and MVC, Hibernate brings a stable, mature object [1]42,79 € (D) | 43,99 € (A) | CHF relational mapping technology with the ability to integrate with legacy systems, and SiteMesh 53,55 handles flexible layout control and page decoration.
    [Show full text]
  • Pragmatic Bookshelf Groovy Recipes.Pdf
    What readers are saying about Groovy Recipes This is the go-to guide for turning Groovy into every Java developer’s perfect utility knife. Whether you need to quickly parse an Atom feed, serve up an Excel spreadsheet from your Grails app, or create a tar- ball on the fly, this book will show you how. In true Groovy style, Scott does away with all unnecessary ceremony and gets right down to business. In almost every section, the very first thing you see is code— the recipe for solving the problem at hand—and if you want to stick around for the clear and informative explanation, well, that’s strictly optional. Jason Rudolph Author, Getting Started with Grails Groovy Recipes is the book that I want to have in reach whenever I work in my Groovy bakery. Nothing gets you faster up to speed than having well-thought-out recipes for your everyday tasks. Dierk König Canoo Engineering AG The format of this book is ideal for rapidly obtaining crucial informa- tion just when you need it. An agile text for agile development! Joe McTee Software Engineer, JEKLsoft Groovy is on my radar as one of the next big things in Java, and this book gets you up to speed quickly with lots of great code examples. David Geary Author, Clarity Training, Inc. Scott does a fantastic job of presenting many little nuggets of “groovi- ness” here in a way that is easy to read and follow. There is plenty here for Groovy newcomers and veterans alike. Thanks, Scott! Jeff Brown Member of the Groovy and Grails Core Development Teams Adding Groovy to Java is like adding rocket fuel to your SUV.
    [Show full text]
  • Preparing for Banner Powered by Ellucian XE
    Preparing for Banner powered by Ellucian XE Mark Hoye, Services Portfolio Consultant Ellucian September 25, 2015 Introduction • This session is about moving forward with Banner powered by Ellucian XE. • It explains Ellucian XE, how it adds value to your investment in Banner, and how you can take advantage of its power today. © 2015 ELLUCIAN. ALL RIGHTS RSERVED Agenda 1 Ellucian XE 2 Banner powered by Ellucian XE 3 Preparing for Banner powered by Ellucian XE 4 Summary and Questions © 2015 ELLUCIAN. ALL RIGHTS RSERVED Ellucian XE Ellucian: Future-proof Technology Evolutionary approach Extensible ecosystem strategy Global and mobile-first technology strategy Published roadmaps and product plans Investment in our products and our processes protects our customers’ investments © 2015 ELLUCIAN. ALL RIGHTS RSERVED The XE Strategy and Design Principles Mobile Self-Service Admin UI Cloud XE Design Principles Usability Features/Func7on Cloud Readiness/Scalability Configuraon over Customizaon Extensibility APIs/Integraon Single Global Product © 2015 ELLUCIAN. ALL RIGHTS RSERVED Banner powered by Ellucian XE Applications Leveraging XE Strategy Banner Applications Integrated Applications • Catalog & Schedule • Ellucian eTranscripts • Faculty Grade Entry • Ellucian Mobile • Attendance Tracking • Ellucian Elevate • Event Management • Ellucian Pilot (Student Success) • Advising Student Profile • Ellucian Portal for Banner • Student Registration • Intelligent Learning Platform (ILP) • Employee Profile • APIs (Services) • Academic history • Student • Communication Management © 2015 ELLUCIAN. ALL RIGHTS RSERVED ReSTful services and the Higher Education Data Model • Expose “Resources” - important concepts and objects • Each resource is uniquely Resources (Nouns) “addressable” • Provide “representations” of those resources Verbs • Provide a consistent interface (Get, Post, Put, Delete) based upon standard HTTP methods • Interaction with the API is stateless Output (XML, JSON) © 2015 ELLUCIAN.
    [Show full text]
  • The Definitive Guide to Grails
    G. Rocher, J.S. Brown The Definitive Guide to Grails ▶ This will be the first and only definitive book on the agile open source lightweight Grails (“Groovy on Rails” analogous to Ruby on Rails) Framework 1.0 release ▶ Written by the open source Grails project founder and lead, Graeme Rocher ▶ Emerging growth area with support from key open source lightweight projects like Spring, Hibernate, Wicket and more The rise of Ruby on Rails has signified a huge shift in how we build web applications today; it is a fantastic framework with a growing community. There is, however, space for another such framework that integrates seamlessly with Java. Thousands of companies have invested in Java, and these same companies are losing out on the benefits of a Rails– 2nd ed., 648 p. like framework. Enter Grails. A product of Apress Grails is not just a Rails clone. It aims to provide a Rails–like environment that is more familiar to Java developers and employs idioms that Java developers are comfortable Printed book using, making the adjustment in mentality to a dynamic framework less of a jump. The concepts within Grails, like interceptors, tag libs, and Groovy Server Pages (GSP), make Softcover those in the Java community feel right at home. ▶ 39,99 € | £36.99 | $46.99 ▶ *42,79 € (D) | 43,99 € (A) | CHF 53.55 Grails' foundation is on solid open source technologies such as Spring, Hibernate, and SiteMesh, which gives it even more potential in the Java space: Spring provides powerful eBook inversion of control and MVC, Hibernate brings a stable, mature object relational mapping technology with the ability to integrate with legacy systems, and SiteMesh handles Available from your bookstore or flexible layout control and page decoration.
    [Show full text]
  • Learning of Web Application Frameworks Based on Concerns, Micro-Learning and Examples
    Learning of Web Application Frameworks based on Concerns, Micro-Learning and Examples Daniel Correa Botero Universidad Nacional de Colombia Facultad de minas, Departamento de ciencias de la computación y la decisión Medellín, Colombia 2014 Learning of Web Application Frameworks based on Concerns, Micro-Learning and Examples Daniel Correa Botero Submitted in partial fulfillment of the requirements for the degree of: Magister en Ingeniería de sistemas Thesis Director: Ph.D. Fernando Arango Isaza Research Area: Software Framework Understanding Research Group: Grupo de ingeniería de software Universidad Nacional de Colombia Facultad de minas, Departamento de ciencias de la computación y la decisión Medellín, Colombia 2014 …To my mother, Mercedes …To my future wife, Juliana Acknowledgments This master thesis would not have been possible without the support of many people. Many thanks to my thesis director, Ph.D. Fernando Arango Isaza, who spent a lot of time: making revisions, creating ideas and helping me with this project. Many thanks to Ph.D. Carlos Mario Jaramillo Zapata, who gave us excellent support: helping us to translate some papers and giving us ideas and corrections. Many thanks to Ph.D. Gloria Lucia Giraldo, who gave us support and allowed creating some experiments with her students. Thanks to Ph.D. Carlos Jaime Franco, who gave us support during the entire project to present some ideas in other countries. Thanks to Above & Beyond and BT your music is a wonderful source of inspiration. Thanks to Sebastián Gomez my friend who give me support. Thanks to Universidad Nacional de Colombia and Colciencias which provided me with the financial means to complete this project and made possible to present some chapters of this project in some conferences around the world.
    [Show full text]
  • Choosing a JVM Web Framework
    Choosing a JVM Web Framework Matt Raible [email protected] http://raibledesigns.com © 2007 Raible Designs, Inc. Today’s Agenda Introductions The Problem Is there a solution to The Problem? How do you choose? 6 Important Factors Case Studies What do I think? Q and A © 2007 Raible Designs, Inc. Audience Matters This talk is designed for teams trying to navigate the confusion in the JVM Web Framework space It is designed to be a discussion, not a presentation These are my opinions... ... and options are like ... Your opinions will influence mine So please share them! © 2007 Raible Designs, Inc. Introductions Your experience with web applications? Your experience with Java EE? What do you want to get from this session? Experience with Maven, Tomcat, Hibernate, Spring? Web Framework Experience: Spring MVC, Struts 2, Stripes, JSF, Tapestry, Wicket, Rails, Grails, Flex © 2007 Raible Designs, Inc. Who is Matt Raible? Power user of Java Open Source Frameworks Author of Spring Live and Pro JSP 2.0 Founder of AppFuse and AppFuse Light Member of Java EE 5, JSF 1.2 and Bean Validation Expert Groups Committer on Apache Projects: Roller and Struts Java Blogger since 2002 © 2007 Raible Designs, Inc. The Problem © 2007 Raible Designs, Inc. The Problem © 2007 Raible Designs, Inc. How do you choose? © 2007 Raible Designs, Inc. Eliminate, don’t Include © 2007 Raible Designs, Inc. © 2007 Raible Designs, Inc. 6 Important Factors Request, Component or RIA Framework Ease of Development Project Community Project Future and Roadmap Maintenance Technical Features © 2007 Raible Designs, Inc. Request, Component or RIA Are you developing..
    [Show full text]
  • Frederic Daoud — «Stripes... and Java Web Development Is Fun Again
    What readers are saying about Stripes. and Java Web Development Is Fun Again This book is a must for anyone using Stripes, novice or pro. The author has done a great job of explaining the basics as well as the details of Stripes’ amazing features while showing how to build a real- life application. A novice developer can get up to speed fast, keeping with Stripes’ pragmatic approach to development: “It doesn’t have to be hard.” As the chapters progress, you will gain thorough knowledge of all the Stripes features. What really impressed me was the author’s dedication to giving you full examples of all the possible variations; you’re not left thinking, “If I just knew how to use that feature.” If you want to know how to use a Stripes feature, look it up in this book—it’s definitely covered. Stripes...and Java Web Development Is Fun Again will be on my work desk from now on. Jeppe Cramon Chief Architect, TigerTeam This book is really engaging. Since I’m familiar with Stripes, I enjoyed learning about many lesser-known nuances that Stripes provides— and those tasty little nuggets kept me reading. This book delivers a comprehensive understanding of the intellectual and technical aspects of Stripes. It has served to cement my appreciation for Stripes. Brandon Goodin Coauthor, iBATIS in Action At first I thought this book would be merely a welcome dead-tree ref- erence for our team of self-proclaimed veteran Stripes developers. But somewhere along the way Frederic Daoud managed to greatly impress and humble me with his experience and in-depth knowledge of Stripes.
    [Show full text]
  • Grails in Action, Second Edition by Glen Smith Peter Ledbrook
    S AMPLE CHAPTER SECOND EDITION Glen Smith Peter Ledbrook FOREWORD BY Dierk König MANNING Grails in Action, Second Edition by Glen Smith Peter Ledbrook Chapter 1 Copyright 2014 Manning Publications brief contents PART 1INTRODUCING GRAILS...................................................1 1 ■ Grails in a hurry . 3 2 ■ The Groovy essentials 33 PART 2CORE GRAILS..............................................................61 3 ■ Modeling the domain 63 4 ■ Creating the initial UI 91 5 ■ Retrieving the data you need 110 6 ■ Controlling application flow 136 7 ■ Services and data binding 155 8 ■ Developing tasty forms, views, and layouts 189 PART 3EVERYDAY GRAILS .....................................................227 9 ■ Building reliable applications 229 10 ■ Using plugins: just add water 261 11 ■ Protecting your application 297 12 ■ Exposing your app to other programs 328 vii viii BRIEF CONTENTS 13 ■ Single-page web applications (and other UI stuff) 357 14 ■ Understanding Spring and transactions 380 PART 4ADVANCED GRAILS ....................................................399 15 ■ Understanding events, messaging, and scheduling 401 16 ■ NoSQL and Grails 432 17 ■ Beyond compile, test, run 467 18 ■ Grails in the cloud 496 Grails in a hurry . This chapter covers ■ What is Grails? ■ Core Grails philosophy ■ Grails installation ■ Key components of a Grails application ■ Your first Grails application—developing and deploying it “Help, I’ve lost my Mojo!” That statement is a concise summary of what developers feel when working with any of the plethora of Java web frameworks. Each change requires time spent editing configuration files, customizing web.xml files, writing injection definitions, tweaking build scripts, modifying page layouts, and restarting apps. Aaaahhhh! “Where has all the fun gone? Why is everything so tedious? I wanted to whip up a quick app to track our customer signups! There must be a bet- ter way .
    [Show full text]
  • Exploring Google Web Toolkit (GWT)
    GWT in Action, Second Edition Ian Bambury, Christopher Ramsdale, Robert Hanson, Adam Tacy Tools are great, but Google Web Toolkit (GWT) is more than just a tool for writing JavaScript application in Java. GWT is a platform with which you can build extraordinary complex applications that run in the browser without any proprietary plug-ins. This green paper from GWT in Action, Second Edition provides a glimpse into each tool in GWT. To save 35% on your next purchase use Promotional Code tacy2gp35 when you check out at www.manning.com. You may also be interested in… Exploring Google Web Toolkit (GWT) Google Web Toolkit (GWT) has filled a gap that most people hadn’t even realized was there. Some people love JavaScript, but most web programmers aren’t big fans of it—you need an in-depth knowledge of JavaScript, HTML, CSS, and browser quirks to be sure that everything is safe and will work in all major browsers. One gets caught up using a dynamic language, and there isn’t a lot in the way of development tools to help you with code completion, live syntax checking, and so on. Java, on the other hand, has everything you could wish for, an awful lot of development, and testing tools. Even if you stick to just the ones that are free, there is a tremendous choice of comprehensive applications that have more features than you’ll ever need. But Java isn’t JavaScript, so what is the point of discussing it? Well, what if you took the Java source code and turned it into JavaScript? You would have all the advantages of the free development environments, debugging, testing tools, and code coverage reports, and the end result would be JavaScript, which can run in a browser.
    [Show full text]
  • Accelerated GWT Building Enterprise Google Web Toolkit Applications
    V. Gupta Accelerated GWT Building Enterprise Google Web Toolkit Applications ▶ The Google Web Toolkit is by far the most popular Ajax framework solution for Java developers ▶ Bypasses the fundamental primers on JavaScript and Ajax which have been repeated ad nauseum in other books, allowing readers to focus exclusively on GWT The Google Web Toolkit (GWT) is a key member of Google's popular array of software development solutions, and is easily the most popular Ajax framework solution for Java developers. Fully compatible with the most popular Java frameworks, Grails and Spring among them, GWT is quickly going to become an indispensable part of Java-minded developers' knowledge base. 1st ed., 312 p. A product of Apress Accelerated Google Web Toolkit offers a fast paced yet thorough introduction to GWT, offering serious developers not only key insights into the framework's capabilities, but also into how readers can most effectively incorporate GWT into their daily development Printed book routine. Softcover ▶ 31,99 € | £29.49 | $36.99 ▶ *34,23 € (D) | 35,19 € (A) | CHF 43.05 eBook Available from your bookstore or ▶ springer.com/shop MyCopy Printed eBook for just ▶ € | $ 24.99 ▶ springer.com/mycopy Order online at springer.com ▶ or for the Americas call (toll free) 1-800-SPRINGER ▶ or email us at: [email protected]. ▶ For outside the Americas call +49 (0) 6221-345-4301 ▶ or email us at: [email protected]. The first € price and the £ and $ price are net prices, subject to local VAT. Prices indicated with * include VAT for books; the €(D) includes 7% for Germany, the €(A) includes 10% for Austria.
    [Show full text]
  • Creative Workline Gmbh
    creative workline GmbH - IT Consulting & Mobile App Solutions Skill Matrix www.creativeworkline.com Grundwissen Sehr gut Conception & Design We love to make you Appy! Conceptional Workshops Mockup & Wireframing (Balsamiq, Cocoo) Design (Photoshop, Indesign) GIMP Programming Languages & Plattforms Java .NET Objective C Visual Basic C# iPhone / iPad Android / Tablets BlackBerry Windows Phone Java ME (MIDP, CLDC) Java SE Java EE Mac OS X Markup Languages XML HTML / XHTML UML Web Technologies PHP 5 Groovy JSF ASP.NET Javascript CSS JSON SOAP AJAX HTML5 RESTful Services JQuery / JQuery Mobile PhoneGap / Cordova CMS / Frameworks Grails CakePHP WordPress XMPP LWUIT Spring Framework Hibernate TYPO3 Interfaces / Web Services Facebook Twitter OpenStreetMap Foursquare Google Maps Google Doc APIs Push Notifications (GCM, APNs) Databases MongoDB PostgreSQL MySQL Oracle MSSQL SQLite HSQLDB ORM / Hibernate PostGIS NoSQL Software Engineering Projektmanagement Scrum Extreme Programming OOP / OOD / OOA Software Architektur Design Patterns IDE Eclipse Xcode BlackBerry JDE MS Visual Studio Aptana Studio Android Studio OS / Server Debian Ubuntu Apache LightHTTPD Tomcat JBoss GlassFish Geronimo OpenFire Cloud / PaaS / IaaS / Payment Google App Engine Amazon EC2 / S3 / Elastic Beanstalk Mongolab Jelastic PayPal Recurly / Braintree In-App-Payment (Google, Apple, Amazon) SCM / Build Tools / Issue Tracking Git / GitHub / Assembla / Bitbucket Subversion CVS Maven Ant Gradle Mantis BT JIRA / Agile CocoaPods Marketing / Communication Communication models (NLP, TA) Negotiation App Marketing / ASO App Videos Win-Win Thinking v3 20140207.
    [Show full text]
  • Towards Left Duff S Mdbg Holt Winters Gai Incl Tax Drupal Fapi Icici
    jimportneoneo_clienterrorentitynotfoundrelatedtonoeneo_j_sdn neo_j_traversalcyperneo_jclientpy_neo_neo_jneo_jphpgraphesrelsjshelltraverserwritebatchtransactioneventhandlerbatchinsertereverymangraphenedbgraphdatabaseserviceneo_j_communityjconfigurationjserverstartnodenotintransactionexceptionrest_graphdbneographytransactionfailureexceptionrelationshipentityneo_j_ogmsdnwrappingneoserverbootstrappergraphrepositoryneo_j_graphdbnodeentityembeddedgraphdatabaseneo_jtemplate neo_j_spatialcypher_neo_jneo_j_cyphercypher_querynoe_jcypherneo_jrestclientpy_neoallshortestpathscypher_querieslinkuriousneoclipseexecutionresultbatch_importerwebadmingraphdatabasetimetreegraphawarerelatedtoviacypherqueryrecorelationshiptypespringrestgraphdatabaseflockdbneomodelneo_j_rbshortpathpersistable withindistancegraphdbneo_jneo_j_webadminmiddle_ground_betweenanormcypher materialised handaling hinted finds_nothingbulbsbulbflowrexprorexster cayleygremlintitandborient_dbaurelius tinkerpoptitan_cassandratitan_graph_dbtitan_graphorientdbtitan rexter enough_ram arangotinkerpop_gremlinpyorientlinkset arangodb_graphfoxxodocumentarangodborientjssails_orientdborientgraphexectedbaasbox spark_javarddrddsunpersist asigned aql fetchplanoriento bsonobjectpyspark_rddrddmatrixfactorizationmodelresultiterablemlibpushdownlineage transforamtionspark_rddpairrddreducebykeymappartitionstakeorderedrowmatrixpair_rddblockmanagerlinearregressionwithsgddstreamsencouter fieldtypes spark_dataframejavarddgroupbykeyorg_apache_spark_rddlabeledpointdatabricksaggregatebykeyjavasparkcontextsaveastextfilejavapairdstreamcombinebykeysparkcontext_textfilejavadstreammappartitionswithindexupdatestatebykeyreducebykeyandwindowrepartitioning
    [Show full text]