Entelect Training: Talks and Lectures

Our Training division is focused on offering specialist talks to our staff, clients and students at partner universities. At this stage our courses are not open to the public, however we will accommodate training requests for teams of 5 or more people. Feel free to contact us should you require a tailored training proposal.

Some talks and topics previously covered include:

This talk is intended for anyone who is interested in applying basic Artificial Intelligence (AI) principles to software development.

This talk introduces the concept of options in finance and how to incorporate Reinforcement learning into your software, and will give you the necessary insight to incorporate various basic AI techniques into your software development.

This talk is intended for developers of all levels who have project development and object-oriented programming experience.The lecturer will discuss important problematic concepts when designing modular applications (tangled or scattered code), and how to separate this code into distinct parts.

At the end of this talk you should understand concepts such as cross-cutting concerns, advice, point cuts and aspects. You should be able to use aspects to deal with cross-cutting concerns in a clean, efficient way.
The target audience for this presentation will primarily be developers who have experience with either C# or Java but little to no experience with the other.

This talk will provide insight and tools for programmers who work with either Java or C# and might need to use the other language from time to time.

By the end of this presentation you should know what to look out for, and what to look forward to, when the time comes to switch to Java or C#.
This talk is for experienced developers who are interested in learning functional programming.

This presentation is a broad overview of the Clojure programming language. The talk briefly covers Domain specific languages (DSL) and Functional Programming and Concurrency. It will show how Clojure dramatically reduces accidental programming complexity and increases programmer expressiveness, leaving you with a greater sense of understanding of the Clojure language.
This talk is open to all developers who are interested in Business Intelligence.

This lecture will cover the major aspects of Business Intelligence, from the relational database, the ETL process, dimensional modelling, creating a cube, and using excel for reporting.

At the end of this talk you will have a basic understanding of the concepts and basic tools of Business Intelligence. Natural User Interfaces
This talk is open to any developer or people in other tech-related work areas. Introduction to natural user interfaces requires no technological background. The practical demonstration using a Microsoft Xbox Kinect controller may require some math background.

The presentation will cover the background and history of user interfaces and the recent popularity of devices which use natural interfaces (the Wii and the Kinect). The main focus of the talk will be on practical implementation of the Xbox Kinect to allow any user to easily interact with a computer without using a mouse or keyboard.

In conclusion, attendees should have a solid understanding of the area of natural user interfaces, including where it currently is and is not suitable to be deployed, including some practical knowledge showing the strengths and limitations of the current levels of technology.
This talk will suit any software developer interested in language modelling and may need some mathematical background.

An introduction to the high-level maths behind language modelling without going into the detail of the mathematical proofs is provided. A broad overview of the Facebook API's is given, along with a detailed example involving the retrieval of user statuses/posting of statuses involving language modelling.

The attendee should gain an understanding of the basic ideas involved in language modelling as well as enough knowledge to use and explore Facebook API and have the confidence to approach the underlying technology.
The target audience for this talk would be microcontroller enthusiasts with basic digital systems experience, C/C++ basics.

The talk demonstrates the setup and use of the Arduino hardware prototyping platform and includes its application in a home automation environment.

At the end of this talk you will be able to setup the Arduino development environment as well as write a program to the Atmel mirco-controllers program memory.
This talk gives an overview of the mobile application development landscape and introduces the problem of fragmentation.

The Android platform is examined as a prime example of a contemporary mobile application development framework and a simple demonstration application is shown.

The attendee should gain working knowledge of the basic ideas involved in mobile application development and have the confidence to work in an Android technology environment.
This talk will suit any software developer involved with web design, and provides an overview of the key principles in designing visually appealing and user-friendly websites.

Areas covered include colour, control, contrast, scanning and placement, form optimisation, validation practises, screen resolution, website layouts, scrolling, specialised controls and much more.

The attendee will a have firm grasp of the visual and practical best-practises in designing websites.
This talk will suit anybody who is interested in web development using the Ruby on Rails framework. The talk is not suitable for developers who are already familiar with Ruby on Rails.

This talk introduces the Ruby language and the Rails web development framework. The features of the ruby language are discussed and some examples are shown. Subsequently an overview of the Rails framework, in terms of architecture and features, is presented and a demonstration showing how to build a (simple) rails application is given.

At the end of this talk you will have an overview of the ruby on rails framework. You will know what to expect from the framework and what its strengths and weaknesses are.
This talk is suitable for software developers of any level, but will be of most benefit to developers involved in creating web applications that have a requirement for graphical elements.

This talk offers a thorough introduction to the canvas element – the different drawing functionalities available, their workings, limitations/optimizations along with a demo showing the workings of the Canvas. It also includes a brief introduction to JavaScript/jQuery for developers unfamiliar with them.

At the end of this talk attendees should be able to create a web site with several interactive graphical elements as a viable alternative to using Flash.
This brief introduction is aimed at helping all developers, and business people in general, to understand the principals of accounting and what to be careful of when coding. No previous accounting knowledge is needed.

All developers will at some time in their coding lives work with an accounting system, either directly or through integration. At first this may sound dull and unchallenging, until the murky world of accounting principles raises its head. Why do assets equal the sum of ownership and liabilities? When we increase an asset, we debit it, but when we increase an expense, we debit that too?

In this lecture we will learn the basics of the accounting equation, and understand what gets debited or credited and when. You will learn about source documents and the flow of data through a process and see why a normalised database doesn't work. Specifically discussed is the treatment of taxes, multi-currency and costing methods. There will be a couple of tips on coding for accounting.

After this lecture you will have a broader grasp of the principals involved in accounting.
This talk is suitable for developers of any level, as well as software architects and designers.

The Introduction to Windows Azure talk look sat the important requirements to keep in mind when developing software for the cloud, as well as advantages and disadvantages of a cloud deployment.

There will be emphasis on specific issues such as how to efficiently package releases and manage QA processes. The presenter will provide a short walk-through of the tool support provided by Microsoft in the form of their Azure portal and Visual studio enhancements.

At the end of this talk you will understand the history and purpose of Windows Azure, and its application to hosting. You will also have a strong starting knowledge of how to plan for, and create a Windows Azure provisioned web or worker role.
This talk is suitable for developers of any skill level.

This demonstration provides working examples of how to improve bad code. The presenter will discuss naming, functions, classes and show some examples of bad code.

At the end of the talk you will be able to write cleaner, better code.
This talk is suitable for IT professionals with a basic understanding of the Agile environment.

The purpose of the presentation is to establish that software code is the fabric that holds software architecture together, with the final product being working software where performance can be measured. The presentation is meant to provoke both system designers and software developers to design and develop software which meets the purpose for which it was intended. The focus on quality is to ensure that different builders of software always do so from a User perspective and that project success is not only determined by the time it takes to build software, how much it cost to build the software but also ensure that the final product meets both functional and non-functional requirements for which it was intended. In this presentation, the subject of Software Architecture is approached from a very high level perspective.

At the end of the talk you will have a wider perspective of the considerations that should be made when architecting new systems and basic methodologies on how these considerations should be evaluated.
This talk is suitable for developers of any skill level.

The presentation starts off by looking at a technology known as OpenCL(Open Computing Language) - a framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), and other processors. The presentation looks at how OpenCL fits into the current parallel sphere, and what are the rationales for choosing OpenCL over other parallel frameworks. It also looks at the OpenCL specification and defines the main concepts used in OpenCL, namely the platform model, execution model, memory model and the programming model. After providing a base for understanding OpenCL the presentation focuses on to show how to bind to OpenCL with WebCL – a Javascript binding to OpenCL. It will also have a discussing of some the current limitations and what are the future works regarding WebCL.

At the end of the talk you will have an understanding of what the OpenCL and WebCL libraries capabilities are, a high level understanding of how they can be implemented and the current restrictions with these technologies.
This talk is suitable for anybody involved in any phase of the Software Development Lifecycle.

During this presentation a brief history of Agile will be given by highlighting the different production eras from past to present and how Agile affects our working environments today. The Agile Manifesto will also be discussed, with specific focus on its values and how they are commonly misunderstood. Business or management buy-in to Agile can be a challenging matter, and therefore guidelines to overcome this will also be highlighted. Organisations need to fully realise that the value delivered to a customer, in other words return on investment (ROI), is more important than delivering on time, on budget and on schedule. ROI is a much more accurate way to measure project success than using traditional metrics like time, budget and schedule. The presentation will close off with some statistics of recent surveys done with regards to Agile adoption in the market place.

At the end of the talk you will have a better understanding of the Agile manifesto, a better understanding of how the Agile process could be used to improve the Return on Investment of software projects and the presentation should clear up common misconceptions of the Agile manifesto.
This talk is suitable for developers of any skill level.

An introduction to software development for the Windows 8 and Windows RT platforms. This lecture seeks to highlight the differences between the new WinRT runtime and the traditional Win32 runtime; including the types of applications that each is suited for. Practical examples of code will be presented for C# and JavaScript as well.

The attendee should have a better understanding of the Windows 8 and Windows RT platforms, he/she will also have the basic building blocks required to develop a basic application using these platforms.
C# Software Developers with a understanding of Object Oriented concepts

The presentation covers the basics of dependency injection, in the context of a desktop application, using Ninject 3, an open source inversion of control container for the .NET framework. It is based around an example application; a mini-game with basic graphics. The application demonstrates how dependency injection should be applied, as a natural extension to object oriented programming, to loosen coupling between interacting objects. This can be done without any external configuration files or container-specific attributes littering the code. The focus will be on constructor injection since it’s the most widely used variant of DI. The main objective is to show how to bind classes under a variety of conditions, from single bindings to entire dependency trees. I will also demonstrate some different approaches to solving the problem of runtime binding.

The attendee will have a better understanding of dependency injection and more specifically dependency injection using the Ninject framework. The aim is to demonstrate the simplicity of using the dependency injection without making major changes to exiting architecture

This talk is suitable for developers of any skill level.

This talk uses a practical example to provide an insight into how mobile apps (Android), the cloud (Azure) and the web can be integrated to provide a solution. The presenter illustrates the basic concepts of both android and cloud development.

The attendee will have the building blocks required to develop a basic android application and to link that application to another system hosted in the Azure cloud environment.




 

 
 


 

Press Office
Top Honours for Entelect at Microsoft
April 11, 2013
Supplied by Entelect Website Admin from Entelect
Entelect has been selected as a preferred African partner to attend the Microsoft Partner Council. This exclusive "by invitation only" event will be held in Redmond, Washington from 17 to 19 April and has been reserved for 41 Microsoft partner companies worldwide. The schedule includes high powered speakers, private boardroom sessions with top executives, tours of Microsoft’s facilities and introductions to new technologies. ...

Entelect Foundation supporting 45 underprivileged children
February 20, 2013
Supplied by Entelect Website Admin from Entelect
Entelect, through its Foundation programme, is mentoring and financially supporting 45 underprivileged school children this year. Beneficiaries' names were put forward by staff members who know them, thus forming part of the company's extended community. Entelect's commitment is to pay for school fees, books, uniforms and other related education activities until they graduate, taking on new recipients each year as the company grows. Coupled with this a team of 25 Entelect volunteers (and friends) are assisting the children and their parents or guardians on weekends with mentorship support....

Graduate bootcamp raises the bar at Entelect
February 20, 2013
Supplied by Entelect Website Admin from Entelect
Entelect has used its extensive university networks to hire fifteen of the top Computer Science and Engineering graduates in the country. The range of graduates came from UJ, Wits, UKZN, Rhodes and NMMU, and all were in the top 10% of their respective classes. Over December and January, they were all put through a series of training sessions affectionately known as our Development Bootcamp. The Bootcamp comprised of a series of lectures and practical projects designed to teach the graduates not only the basics of software engineering but also the issues facing software engineers in the enterprise development environment. ...

Entelect announces 60% growth at year-end bash
December 7, 2012
Supplied by Entelect Website Admin from Entelect
Entelect’s annual year-end party took place at Riverstone Lodge on Friday 23 November in Muldersdrift. A variety of team-based “Entelect Survivor Games” activities took place in the afternoon, followed by drinks and prize-giving on the terrace and a superb dinner buffet of South African foods. Dancing and festivities progressed at full vigour with the last bus departing in the early hours of the morning!...

Jaco Cronje banks R100k courtesy of the Entelect R100K Challenge!
October 16, 2012
Supplied by Entelect Website Admin from Entelect
Last weekend saw the Entelect R100K Challenge finalists battle it out for R100 000.00 in prize money at Africa’s biggest gaming expo, rAge....