In large projects, the Software Architect role includes both the client communication and requirements management, and the solution design itself, making sure technical quality is garanteed. This presentation describes the lessons learned with a highly successful project that took 3 years of development until its production phase, in technical, functional, and architeture aspects.
Presented at the 50th meeting of the Netponto Community in Lisboa, Portugal.
A Java compiler is a compiler for the development terminology Java. The most frequent way of outcome from a Java compiler is Java category data files containing platform-neutral Java bytecode,
These slides were used for the module "Introduction to EJB" which was taught as a part of the course "Software Engineering" for the 3rd year computer enigneering undergraduates of the University of Peradeniya in 2010.
Designing the foundations of an iOS application is important to reduce the cost of maintenance and evolution. In this session we will see some best practices on how to organize iOS apps both from the point of view of the Xcode project and the source code. Based on the typical iOS client/server application, we will see how to structure the layers ranging from the user interface to the netwrok layer.
Slides presented at #Pragma Conference 2013
http://pragmamark.org/eventi/pragma-conference-2013/
http://pragmamark.org/sessioni/pragma-conference-2013-building-ios-app-project-and-architecture/
What all things to consider for a good career in javaJanBask Training
This shortage has created a huge demand for the right Java developers. Existing Java developers also need to brush up their knowledge and skills to gain benefit from this increasing demand.
https://www.janbasktraining.com/online-java-training
A Java compiler is a compiler for the development terminology Java. The most frequent way of outcome from a Java compiler is Java category data files containing platform-neutral Java bytecode,
These slides were used for the module "Introduction to EJB" which was taught as a part of the course "Software Engineering" for the 3rd year computer enigneering undergraduates of the University of Peradeniya in 2010.
Designing the foundations of an iOS application is important to reduce the cost of maintenance and evolution. In this session we will see some best practices on how to organize iOS apps both from the point of view of the Xcode project and the source code. Based on the typical iOS client/server application, we will see how to structure the layers ranging from the user interface to the netwrok layer.
Slides presented at #Pragma Conference 2013
http://pragmamark.org/eventi/pragma-conference-2013/
http://pragmamark.org/sessioni/pragma-conference-2013-building-ios-app-project-and-architecture/
What all things to consider for a good career in javaJanBask Training
This shortage has created a huge demand for the right Java developers. Existing Java developers also need to brush up their knowledge and skills to gain benefit from this increasing demand.
https://www.janbasktraining.com/online-java-training
Oracle Application Express has proven itself as a powerful development platform for internal development needs in countless organizations worldwide. One of the new frontiers it is starting to conquer is building commercial applications. This session covers what it takes to use Oracle Application Express as a platform for building commercial applications. It looks at all facets of the software development lifecycle and discusses different infrastructures, deployments, processes, and tools used to make development with Oracle Application Express as streamlined and cost-effective as possible. Real-world examples are given throughout the session. Much of what is discussed in this session can also be applied to medium to large Oracle Application Express projects.
Web Test Automation Framework - IndicThreads ConferenceIndicThreads
Amid Nails, Nuts and Bolts the hammer is not enough.
TeKila is an aggregation of several Open Source powers – Google Web Driver, HTML Unit, Java Robots, TestNG & many more … It offers a tool kit to test Web Application at different levels & in modes.
Attempting a task of writing test automation framework which does more than UI testing for rapidly growing web-based applications is a tough task. Many find it tormenting, some attempt it & only a few succeed. You have to apply lots creative ideas and innovative approaches for your test automation project rather than just selecting ONE tool which will do everything for you.
Often the search for a Silver Bullet tool for automating ends in a compromise. In the demanding times when everything is changing rapidly, speed and flexibility cannot be compromised.
In our attempt of combating Automation we came up with TeKila. TeKila is an aggregation of best of various Open Source Powers enabling us to do:
- UI testing on multiple browsers & OS
- Business Logic layer testing using APIs
- Profiling data
- UI Object Repository is kept independent so that later any other tool/framework can be effortlessly incorporated
- Overview of a use case - Sentiment analysis
- Introduction - Using Jupyter Notebook & AWS SageMaker
- Setup New Project
- Setup and Run the Build CI/CD Pipeline
- Setup the Release Pipeline
- Test Build and Release Pipelines
- Testing the deployed solution
- Examining deployed model performance
Java is a programming language that produces software for multiple platforms. This Slide covers Basic and fundamentals of Java, Why Java most used in IT company, What are Job Opertunities for Java, How Java overtage a business Strategies.
These slides were used to teach the module "Introduction to Agile Software Development & Python" as a sub-section of the major course "Software Engineering" for the 3rd year undergraduates of the Department of Computer Engineering, University of Peradeniya in 2010.
These slides were used to teach the above subject for the 3rd year undergrads of the Departement of Computer Engineering, University of Peradeniya in 2009, under IFS-PERADENIYA industry -university collaboration.
ITARC15 Workshop - Architecting a Large Software Project - Lessons LearnedJoão Pedro Martins
Improving on a previous version of this session delivered in Lisbon, this deck describes the real experiences in architecting and developing a large software project that took 3 years to go live. It was presented at a 3,5hr ITARC2015 workshop in Stockholm, Sweden.
A presentation on best practices for J2EE scalability from requirements gathering through to implementation, including design and architecture along the way.
Covering topics like:
CI CD DevOps Jenkins TFS TeamCity Compile Test Package Delpoy
See Disclaimer in the last slide and/or in file comments, if available.
Oracle Application Express has proven itself as a powerful development platform for internal development needs in countless organizations worldwide. One of the new frontiers it is starting to conquer is building commercial applications. This session covers what it takes to use Oracle Application Express as a platform for building commercial applications. It looks at all facets of the software development lifecycle and discusses different infrastructures, deployments, processes, and tools used to make development with Oracle Application Express as streamlined and cost-effective as possible. Real-world examples are given throughout the session. Much of what is discussed in this session can also be applied to medium to large Oracle Application Express projects.
Web Test Automation Framework - IndicThreads ConferenceIndicThreads
Amid Nails, Nuts and Bolts the hammer is not enough.
TeKila is an aggregation of several Open Source powers – Google Web Driver, HTML Unit, Java Robots, TestNG & many more … It offers a tool kit to test Web Application at different levels & in modes.
Attempting a task of writing test automation framework which does more than UI testing for rapidly growing web-based applications is a tough task. Many find it tormenting, some attempt it & only a few succeed. You have to apply lots creative ideas and innovative approaches for your test automation project rather than just selecting ONE tool which will do everything for you.
Often the search for a Silver Bullet tool for automating ends in a compromise. In the demanding times when everything is changing rapidly, speed and flexibility cannot be compromised.
In our attempt of combating Automation we came up with TeKila. TeKila is an aggregation of best of various Open Source Powers enabling us to do:
- UI testing on multiple browsers & OS
- Business Logic layer testing using APIs
- Profiling data
- UI Object Repository is kept independent so that later any other tool/framework can be effortlessly incorporated
- Overview of a use case - Sentiment analysis
- Introduction - Using Jupyter Notebook & AWS SageMaker
- Setup New Project
- Setup and Run the Build CI/CD Pipeline
- Setup the Release Pipeline
- Test Build and Release Pipelines
- Testing the deployed solution
- Examining deployed model performance
Java is a programming language that produces software for multiple platforms. This Slide covers Basic and fundamentals of Java, Why Java most used in IT company, What are Job Opertunities for Java, How Java overtage a business Strategies.
These slides were used to teach the module "Introduction to Agile Software Development & Python" as a sub-section of the major course "Software Engineering" for the 3rd year undergraduates of the Department of Computer Engineering, University of Peradeniya in 2010.
These slides were used to teach the above subject for the 3rd year undergrads of the Departement of Computer Engineering, University of Peradeniya in 2009, under IFS-PERADENIYA industry -university collaboration.
ITARC15 Workshop - Architecting a Large Software Project - Lessons LearnedJoão Pedro Martins
Improving on a previous version of this session delivered in Lisbon, this deck describes the real experiences in architecting and developing a large software project that took 3 years to go live. It was presented at a 3,5hr ITARC2015 workshop in Stockholm, Sweden.
A presentation on best practices for J2EE scalability from requirements gathering through to implementation, including design and architecture along the way.
Covering topics like:
CI CD DevOps Jenkins TFS TeamCity Compile Test Package Delpoy
See Disclaimer in the last slide and/or in file comments, if available.
The development of a product from the point of view of a technician, starting from the concept, passing to the minimum viable till a management of a fully operational and deployed app.
AI algorithms offer great promise in criminal justice, credit scoring, hiring and other domains. However, algorithmic fairness is a legitimate concern. Possible bias and adversarial contamination can come from training data, inappropriate data handling/model selection or incorrect algorithm design. This talk discusses how to build an open, transparent, secure and fair pipeline that fully integrates into the AI lifecycle — leveraging open-source projects such as AI Fairness 360 (AIF360), Adversarial Robustness Toolbox (ART), the Fabric for Deep Learning (FfDL) and the Model Asset eXchange (MAX).
When to Code / Config / Config + Code in Salesforce - Nikunj DoshiSakthivel Madesh
When to Code / Config / Config + Code in Salesforce - Nikunj Doshi
In this session discussed about,
- Key Criteria in deciding right solution.
- Pragmatic takeaways from Salesforce's decision guide https://link.medium.com/SNjI4Rs6Udb
- Sample solutions displaying power of Configurable Code!
- - Any Object to Big Objects archiving utility
- - Metadata Driven declarative rollup
- Q&A & Share our horror/memorable stories on this topic
BP101 - 10 Things to Consider when Developing & Deploying Applications in Lar...Martijn de Jong
Many common development techniques can cause dramatic effects when your application is rolled out over hundreds of servers. As a developer, you need a good understanding of certain parts of the infrastructure to build an application designed for wide-scale deployment. System administrators who review applications before deployment should know what to look for in the code to prevent problems when rolled out to production. This session takes a look at the area where Application Development and System Administration come together. You will hear about real-life problems, view examples of bad code as well as good code, and learn what you should consider when you have to develop or deploy an application which will be rolled out in a large-scale deployment, or how to "harden" your code to support large quantities of documents.
Azure Service Fabric and the Actor Model: when did we forget Object Orientation?João Pedro Martins
Session presented at DDD event in TVP/Microsoft UK HQ. Introduction to Azure Service Fabric, and focus on the actor model (formerly known as Project Orleans), with demos and documentation on how it is supported in Service Fabric. Goal: ask ourselves why did we really replace OO with "stateless services".
Overview session of Microsoft's Azure Service Fabric Overview (v1.5.175), delivered at AzurePT community event in Lisbon, held March 26. The session describes all the main components of the platform, with a focus on its architecture.
Session presented at Microsoft Developer TechRefresh 2015 in Lisbon - Portugal. A remake of the Build 2015 session, with updated contents and new demos.
This deck was presented at the Windows Azure Spring Summit held at Microsoft Portugal in Lisboa, 2013.04.09. The goal was do describe features of Azure that are especially interesting for eCommerce web sites, based on the presenter's and Create It's real experience.
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
Advanced Flow Concepts Every Developer Should KnowPeter Caitens
Tim Combridge from Sensible Giraffe and Salesforce Ben presents some important tips that all developers should know when dealing with Flows in Salesforce.
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Why React Native as a Strategic Advantage for Startup Innovation.pdfayushiqss
Do you know that React Native is being increasingly adopted by startups as well as big companies in the mobile app development industry? Big names like Facebook, Instagram, and Pinterest have already integrated this robust open-source framework.
In fact, according to a report by Statista, the number of React Native developers has been steadily increasing over the years, reaching an estimated 1.9 million by the end of 2024. This means that the demand for this framework in the job market has been growing making it a valuable skill.
But what makes React Native so popular for mobile application development? It offers excellent cross-platform capabilities among other benefits. This way, with React Native, developers can write code once and run it on both iOS and Android devices thus saving time and resources leading to shorter development cycles hence faster time-to-market for your app.
Let’s take the example of a startup, which wanted to release their app on both iOS and Android at once. Through the use of React Native they managed to create an app and bring it into the market within a very short period. This helped them gain an advantage over their competitors because they had access to a large user base who were able to generate revenue quickly for them.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
Even though at surface level ‘java.lang.OutOfMemoryError’ appears as one single error; underlyingly there are 9 types of OutOfMemoryError. Each type of OutOfMemoryError has different causes, diagnosis approaches and solutions. This session equips you with the knowledge, tools, and techniques needed to troubleshoot and conquer OutOfMemoryError in all its forms, ensuring smoother, more efficient Java applications.
Listen to the keynote address and hear about the latest developments from Rachana Ananthakrishnan and Ian Foster who review the updates to the Globus Platform and Service, and the relevance of Globus to the scientific community as an automation platform to accelerate scientific discovery.
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
2. João Pedro “jota” Martins
CTO @ |create|it|
Software Architect
TechEd 2006 –“Iron Architect” Winner
BizTalk Server MVP 2006-2011
Co-founder -GASP + APPU
Windows Azure Insider
3. |create|it|
Founded 2001 @ Lisboa
(Gourmet) Systems Integrator
Team of (proud) 26
Azure -BizTalk -Office 365 –SharePoint
Umbraco-NopCommerce
4. What’s this session about?
Architecting a
Large
Software Project –
Lessons Learned
5. Overview
Banking application for internal use (>3000p)
Web-based, running inside a Windows Forms shell
Started Jun-2011, R1 installed Jul-2014
Scrum -50 sprints
12 man-years in the making
Integrates with 11 systems
Team of 6 + customer team ~8 + other teams ~10
THE PROJECT
11. Classes withtoo manyresponsibilities
LEARNING #1
Service Implementation
Business Manager
Data Access Layer
IOperationInterface
Data Contracts
Business Manager
Thesegottoo large
WCF Physical Hosting (.svc’s)
12. How to work around this?
SOLID principles -Single Responsibility
Domain Driven Design –vertical slices of behaviour
Separation of Concerns–partial classes
When in doubt:
•Create another class
•Use interfaces
LEARNING#1
13. Logging
Do you have detailed logging enabled in your production environments?
LEARNING#2
Is this useful?
15. Logging -hints
In some cases, you can’t log details of the operation.
Use correlation -relate log entries in the same context.
Beware of impact on performance.
Beware of storage space required. DO cleanup.
*not a problem on the cloud
To read text logs, try this tool: LogExpert
LEARNING #2
16. Interfaces vs Inheritance
“Why extends is evil -Improve your code by replacing concrete base classes with interfaces” (Allen Holub)
http://www.javaworld.com/article/2073649/core-java/why-extends-is-evil.html
LEARNING #3
Dependency injection interfaces.
Very limited use of OO inheritance
-Base Data Contracts with minimum property set (e.g., id + name)
-Less than a handful of uses in total
The bad part? F12 navigates to the interface, not the implementation
17. Dependency Injection
Indirection when instantiating objects:
-Container builds and reuses objects
-Supports mocking for automated tests
Interception:
-Cache
-Logging
-Profiling
-Exception Shielding
Fully configurable in .config
LEARNING #4
Caller
Target
Interceptor –Call handler
18. Dependency Injection pitfalls
Initial setup can be demanding (skills+time)
Programming configurations (complex debugging)
Impact on runtime performance
LEARNING #4
20. Cache
Cache transparentlyvia interception + configuration.
Cache before accessing the network (CPU is cheap).
Designed for 3 freshness configs.
LEARNING #5
PresentationLayer
21. Cache: ooops!
Business information presented must be accurate – and data is not stable in external systems.
Very limited set of external reference data.
User authorization must be considered.
Transparent, configuration-based cache, is convenient - however, you can’t selectively expire contents!
LEARNING #5
22. Automated tests
Requirement:80% coverage by automated tests in service layer.
Team principle: the AGILE team is not afraidto change any piece of code for fear of breaking something.
Approach: service-level, end-to-end tests
-Visual Studio Tests
-Not unit tests
-Depend on external data
-Sprint backlog: One service operation, one test set
LEARNING #6
24. Automated tests –more mmmm…
VS2012 test runner worse than VS2010 (!)
Have a Test King in the team
Smart asserts improve code-coverage:
Tool recommendation: SSMSto generate T-SQL from data
LEARNING #6
25. Code Conventions
Agree on coding conventions and stylecopcompliance at start of project.
Architect/Tech Lead name allthe main artifacts: service contracts, database artifacts, etc. Strive for consistency.
LEARNING #7
26. Code Conventions notes
Focus on code legibility:
-Don’t use varfor non-anonymous types
-Don’t overdo Linqstatements
-Comment your code
Mistakes will happen, and renames will be needed (mixing PT with EN is frequent).
Uniformizeverbs in services/methods.
Do NOTargue tab size. In doubt, use defaults.
LEARNING #7
27. Negotiation… with your team, and with the customer
Always voice your opinion, focusing on what’s best for the project. Create a trust relationship.
When your approach is not followed, and you are sure you are right, present objective arguments –don’t be emotional. Argue for as long as you must, but not longer.
Accept defeat, make compromises.
LEARNING #8
28. Negotiation… some more notes
Be attentive of the other’s possible hidden motivations, but be careful in exposing them.
Consensus is not always possible. Your options willbe questioned, and sometimes you will be wrong.
Remember the 3 views of architecture: theoretical, pragmatic, implementable
Ask open questions.
LEARNING #8
29. Functional team/domain experts
They are your peers, and part of the team. You dependon well written and clear user stories.
Domain experts that understand Scrum and team/time constraints make the difference.
Rely heavily on them and their tools. When you don’t understand, ask questions until you do.
LEARNING #9
30. Functional Team do’s and don’ts
Sometimes the way a story is written crystalizes a way of implementation.
Some stories willbe hard to understand and decompose into tasks. Ask for clarifications and don’t implement blindly.
Business context is sometimes missing.
Tendency to “follow the old ways”.
Tendency to abide to single-user/hierarchical requests.
31. Use Your Brain: design elegantly
You are not paid to write code, you are paid to thinkand communicate.
Think things through before committing to a solution.
Try to isolate and design autonomous and change- tolerant components.
Step back, look at the larger picture. As an Architect, you DO NOThave to be a technical expert in everything: focus on capabilities and structure.
LEARNING #10
32. Impediments to using your brain
Interruptions, no whiteboard, too much noise, lack of natural light, music on headphones, time or budget pressure, too much coffee, personal problems, lack of sleep, …
What’s your style: collaborate then design, or design and then collaborate? Isolate yourself to design. Make drawings, and the document your proposed solution.
33. Revisiting 4 technical choices
KnockoutJSor MVC3?
Took time to decide and spike, there was an initial setback with KO and adoption was reversed. 2ndattempt and investment proved correct.
NxBRERules Engine
Quickgraph.net
Distributed Cache
XML-based rules engine DLL.
XML file can be replaced without recompilation. Works fine and is fast, but hard to code and read. Jury is still out.
Formal Architecture feedback against use was tacitly dismissed as non-pragmatic/expensive, and package was used.
VelocityCTP3 was refused as non- supported. AppFabricnot available in Windows version. Oracle Coherence never provided.
40. Be lazy. Don’t waste precious time coding your own, special, data-access layer/....
* also, scavenge codeplex+github+npm+… for assets to buy or reuse
41. Use an issue tracker, designate someone do to the triage, and configure mail alerts, your pages/modules, team, and sprints.
Teach the customer
how to use it for bugs
& enhancements.
42. Visual Studio Database Projects and Schema Compare are priceless features. Use them.
* start today
45. Just3 more beforeI go…
Humans make mistakes. Scripts don’t. Use scripts and obsessively automate repetitive tasks or installations.
Know your branches protocol, shelves, labels, versioning (just use Microsoft’s recommendation).
Innovating and surprising your customer, and the cherry on the cake, makes a world of difference.
46. Closing message
It’s an architect jobto address the customers’ needs, deliver quality (build cathedrals), and learn constantly.
Hope I helped.