Software Engineering and Programming
Available Speakers on this Topic
Rizwan Ahmed – Nagpur, India
Agile Project Management
This talk will cover various technical aspects related to Agile Project Management. This talk will cover following specific topics:
Enrique Alba – Malaga, Spain
How Can Metaheuristics Help Software Engineers
This presentation focuses on the potential benefits that metaheuristics (Genetic Algorithms, Ant Colonies, Particle Swarm, etc.) can bring to the field of Software Engineering (SE). For this to...
Emery D Berger – Amherst, MA, United States
Performance clearly matters to users. For example, the most common software update on the AppStore is "Bug fixes and performance enhancements." Now that Moore's Law has ended,...
- Saving the World from SpreadsheetsSpreadsheets are one of the most widely used programming environments, with roughly 1 billion users of Microsoft Excel alone. Unfortunately, spreadsheets make it all too easy to make errors...
Gilbert Cockton – Sunderland, United Kingdom
Full STEAM ahead: Putting an A fully and inseparably into STEAM practices for Software Design
Continued growth in the human well-being has long been seen to depend on continuing advances in STEM disciplines (Science, Technology, Engineering and Mathematics). However, in the last...
Dan Garcia – Millbrae, CA, United States
The Snap! (Build Your Own Blocks) Programming Environment
Snap! (formerly BYOB) is a visual, drag-and-drop programming language. It is an extended reimplementation of "Scratch" (a project of the Lifelong Kindergarten Group at the MIT Media Lab)...
Javier Gonzalez-Sanchez – Tempe, AZ, United States
Parallel Computing 101: An overview of multiprocessor, multicore, and GPU programming
Traditionally, software has been written for serial computing where a computational problem is broken into a discrete series of instructions; then these instructions are executed...
Ganesh Lalitha Gopalakrishnan – Salt Lake City, UT, United States
Can Formal Methods (alone) Rescue HPC Debugging?
High Performance Computing systems are extremely complex ensembles of CPUs and GPUs, powering supercomputers that help understand and manage the earth. The same compute power permeates...
- Keeping Science on Keel when Software MovesSignificant investments are made into the creation and maintenance of high-performance computing software, involving dozens of computer scientists and domain scientists working hard over...
Christoph Kirsch – Salzburg, Austria
Selfie and the Basics
Imagine a world in which virtually everyone at least intuitively understands the fundamental principles of information and computation. In such a world computing would be as natural to people as...
Anis Koubaa – Riyadh, Saudi Arabia
IEEE 802.15.4e for IoT Applications: An Overview
IEEE 802.15.4, was initially developed for coping with the requirements of low power and low data rate communication for wireless personal area networks, which then was adopted as a...
Aditya Kumar – San Jose, CA, United States
Code Size Compiler Optimizations and Techniques for Embedded Systems
Code size of embedded applications has been a growing concern recently. While storage becomes cheaper and smaller, developers find creative ways to increase code size by adding features or...
- Performance analysis and optimizationWith the rise of complex systems that run on a large number of devices on server farms, performance analysis has become ever so important. Having a comprehensive knowledge of different abstraction...
- Performance analysis and optimization of C++ standard librariesC++ standard libraries are some of the most widely running system libraries on consumer devices and server machines. Most engineers assume the performance of standard libraries are as good...
Cyber-security the Journey from Formal Methods, Program Analysis, Data Analytics, Artificial Intelligence to Blockchain
Cyber-security is a complex system research, which requires the knowledge across all layers of the computer architecture. In this talk, I would like to share our attempts to solve security...
Secure Deep Learning Engineering: A Road Towards Quality Assurance of Intelligent Systems
In company with massive data explosion and powerful computational hardware enhancement, deep learning (DL) has recently achieved substantial strides in cutting edge intelligent...
- Security Testing (Fuzzing) with Blackbox, Greybox and Whitebox TechniquesSecurity Testing (a.k.a. fuzzing) has recently become the popular technique in hunting for vulnerabilities. But to make it more effective and directly applied in real projects, there is still a...
Vishnu S Pendyala – San Jose, CA, United States
Software Development in Large Organizations
Large organizations can leverage the economies of scale in a number of ways, particularly in the area of Software Engineering. DevOps, which evolved as a dominant Software Engineering...
Hanan Samet – College Park, MD, United States
Translation Validation: Automatically Proving the Correctness of Translations Involving Optimized Code
An early system for proving that programs written in a high level language are correctly translated to a low level language is described. A primary use of the system is as a postoptimization step...
Ashish Seth – Tashkent, Uzbekistan
Containers Essentials: Understanding Developer Perspective using play-with-docker
From Gmail to YouTube to Search, everything at Google and similarly every other large company runs in containers. Containerization allows our development teams to move fast, deploy software...
Wan Abdul Rahim Bin Wan Mohd Isa – Shah Alam, Malaysia
Incorporating the Cultural Dimensions into the Theoretical Framework of Website Information Architecture
Information Architecture (IA) has emerged as a discipline that is concerned with the development of systematic approaches to the presentation and organization of online information. The IA...
Kang Zhang – Richardson, TX, United States
Visual Programming Languages, Theory and Applications
Visual languages have long been a pursuit of effective communication between human and machine. Today, they are successfully employed for end-user programming, modeling, rapid prototyping, and...
- Incorporating the Cultural Dimensions into the Theoretical Framework of Website Information Architecture
- Translation Validation: Automatically Proving the Correctness of Translations Involving Optimized Code
- Security Testing (Fuzzing) with Blackbox, Greybox and Whitebox Techniques
- Performance analysis and optimization
- Code Size Compiler Optimizations and Techniques for Embedded Systems
- Keeping Science on Keel when Software Moves
- Can Formal Methods (alone) Rescue HPC Debugging?
- The Snap! (Build Your Own Blocks) Programming Environment
- Saving the World from Spreadsheets
- How Can Metaheuristics Help Software Engineers