A brief summary of eight Swift features that have, in particular, affected our lives as iOS developers.
I gave this talk in a ESL-Inaka Get Together event on April 30th, 2016. The talk was mostly spoken, the slides themselves only show a summary of all the items I spoke about.
Was asked this question after Code Jugalbandi (codejugalbandi.org) - "Which is the best language that should I pick up next?" But there is a better question - How do I build my language portfolio?"
Do you feel the JavaScript fatigue? Do you find it difficult to understand all the new approaches that come out every single day? You are not alone. JavaScript is a great tool, but its simplicity is its biggest enemy. This talk will uncover why we hate what we hate in JavaScript, how JavaScript could be best utilized, and what it could actually do. We will talk about communities, open source projects, and the companies behind them, and we will talk about the problem with JavaScript.
An attempt to organize the recent explosion of Javascript based technologies and frameworks into a coherent toolkit to be used by a web application developer.
As presented at Force Academy LA 2018, walk through the steps of how to write a Trigger, expand to a robust Trigger handler, and finally implement a framework to make Apex do the routing for you!
Was asked this question after Code Jugalbandi (codejugalbandi.org) - "Which is the best language that should I pick up next?" But there is a better question - How do I build my language portfolio?"
Do you feel the JavaScript fatigue? Do you find it difficult to understand all the new approaches that come out every single day? You are not alone. JavaScript is a great tool, but its simplicity is its biggest enemy. This talk will uncover why we hate what we hate in JavaScript, how JavaScript could be best utilized, and what it could actually do. We will talk about communities, open source projects, and the companies behind them, and we will talk about the problem with JavaScript.
An attempt to organize the recent explosion of Javascript based technologies and frameworks into a coherent toolkit to be used by a web application developer.
As presented at Force Academy LA 2018, walk through the steps of how to write a Trigger, expand to a robust Trigger handler, and finally implement a framework to make Apex do the routing for you!
SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)Jakub Kašparů
Tématem prezentace je popsat nejčastější chyby, které stále vidím na eshopech z pohledu SEO. Nabídnout řešení. Ukázat, jaké jsou možnosti z pohledu analýzy konkurence a odkazových příležitostí pro majitele eshopů.
Lightening Talk I gave at Inaka in May 2014.
This is sort of the continuation of my previous iOS TDD talk.
Since TDD and DI go quite hand in hand and they are both extend concepts to learn in one shot, I had to prepare a completely separated talk for spreading to my fellows the DI knowledge I had acquired.
Developing Swift - Moving towards the futurePablo Villar
This is a talk I gave at Ciudad Universitaria de Buenos Aires on July 23rd, 2015.
The idea was expressing how it felt for me (and my co-worker fellows at Inaka) start using Swift in our projects.
The talk has three aims:
- Speaking a bit about Swift's history.
- Communicating how our mindset as iOS developers has changed from an attitude point of view, rather than technical.
- Speaking briefly about one of Swift's features (optionals) and showing some code.
Android application development company in chennaiedsseo
Elicit Designz Solutions specializes in website development and web designing, mobile application development, PHP and wordpress web development and SEO services in chennai.
Overview of Groovy language features and lead to Functional Programming in Groovy. As this is a code along session backed by this presentation, code examples are not include here as I code them live.
It has been said that one should code as if the person maintaining the code is a violent psychopath who knows where you live. But why do we work with psychopaths? That question unfortunately cannot be answered in this presentation. However, we can shed some light on how to code for readability hopefully avoiding the problem altogether.
Readable code is about a lot more than producing beautiful code. In fact, it has nothing really to do with the beauty of the code and everything to do with the ability to quickly understand what the code does.
In this presentation we will discuss why readable code is so important. We will cover six commonly reoccurring patterns that made code hard to read, why they occur, and how they can easily be avoided:
* Deep Nesting
* Unnecessary Generalization
* Ambiguous Naming
* Hard to Follow Flow of Execution
* Code Style vs. Individualism
* Code Comments
These concepts may be applied to any programming language.
SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)Jakub Kašparů
Tématem prezentace je popsat nejčastější chyby, které stále vidím na eshopech z pohledu SEO. Nabídnout řešení. Ukázat, jaké jsou možnosti z pohledu analýzy konkurence a odkazových příležitostí pro majitele eshopů.
Lightening Talk I gave at Inaka in May 2014.
This is sort of the continuation of my previous iOS TDD talk.
Since TDD and DI go quite hand in hand and they are both extend concepts to learn in one shot, I had to prepare a completely separated talk for spreading to my fellows the DI knowledge I had acquired.
Developing Swift - Moving towards the futurePablo Villar
This is a talk I gave at Ciudad Universitaria de Buenos Aires on July 23rd, 2015.
The idea was expressing how it felt for me (and my co-worker fellows at Inaka) start using Swift in our projects.
The talk has three aims:
- Speaking a bit about Swift's history.
- Communicating how our mindset as iOS developers has changed from an attitude point of view, rather than technical.
- Speaking briefly about one of Swift's features (optionals) and showing some code.
Android application development company in chennaiedsseo
Elicit Designz Solutions specializes in website development and web designing, mobile application development, PHP and wordpress web development and SEO services in chennai.
Overview of Groovy language features and lead to Functional Programming in Groovy. As this is a code along session backed by this presentation, code examples are not include here as I code them live.
It has been said that one should code as if the person maintaining the code is a violent psychopath who knows where you live. But why do we work with psychopaths? That question unfortunately cannot be answered in this presentation. However, we can shed some light on how to code for readability hopefully avoiding the problem altogether.
Readable code is about a lot more than producing beautiful code. In fact, it has nothing really to do with the beauty of the code and everything to do with the ability to quickly understand what the code does.
In this presentation we will discuss why readable code is so important. We will cover six commonly reoccurring patterns that made code hard to read, why they occur, and how they can easily be avoided:
* Deep Nesting
* Unnecessary Generalization
* Ambiguous Naming
* Hard to Follow Flow of Execution
* Code Style vs. Individualism
* Code Comments
These concepts may be applied to any programming language.
Software Engineering Thailand: Programming with ScalaBrian Topping
Meet-up, May 28, 2015, Launchpad, Bangkok. http://www.meetup.com/Software-Engineering-Thailand/events/222548484/.
Apologies for the rendering quality not matching the presentation, I did these with Apple Keynote and Slideshare does not support this format. I will try to edit them when there is more time.
Thanks to Bangkok LaunchPad (https://www.facebook.com/launchpadhq) for generously hosting this event!
The Ember.js Framework - Everything You Need To KnowAll Things Open
All Things Open 2014 - Day 2
Thursday, October 23rd, 2014
Yehuda Katz
Founder of Tilde
Front Dev 1
The Ember.js Framework - Everything You Need To Know
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...AuditMark
The goal of code obfuscation is to delay the understanding of what a program does. It can be used, for example, in scenarios where the code contains Intellectual Property (algorithms) or when the owner wants to prevent a competitor for stealing and reusing the code. To achieve it, an obfuscation transformation translates easy to understand code into a much harder to understand form. But in order to be resilient, obfuscation transformations need also to resist automatic reversal performed using static or dynamic code analysis techniques. This presentation focuses on the specific case of JavaScript source obfuscation, main usage cases, presents some obfuscation examples and their value in providing real protection against reverse-engineering.
The evolution of mobile Development: You are an android developer trying to become an iOS developer, or you are an iOS developer who is trying to get into the android world. Taking advantage of your current platform and put it in steroids
The pragmatic programmer 1999
Andy Hunt, Dave Thomas
Chapter 3 / The Basic Tools
Quick review about programmer's tools , power of plain text, debugging, source code control and so on...
Simon Peyton Jones: Managing parallelismSkills Matter
If you want to program a parallel computer, it obviously makes sense to start with a computational paradigm in which parallelism is the default (ie functional programming), rather than one in which computation is based on sequential flow of control (the imperative paradigm). And yet, and yet ... functional programmers have been singing this tune since the 1980s, but do not yet rule the world. In this talk I’ll say why I think parallelism is too complex a beast to be slain at one blow, and how we are going to be driven, willy-nilly, towards a world in which side effects are much more tightly controlled than now. I’ll sketch a whole range of ways of writing parallel program in a functional paradigm (implicit parallelism, transactional memory, data parallelism, DSLs for GPUs, distributed processes, etc, etc), illustrating with examples from the rapidly moving Haskell community, and identifying some of the challenges we need to tackle.
Programming in Java: Getting Started. Last delivered in 2016. All educational material listed or linked to on these pages in relation to King's College London may be provided for reference only, and therefore does not necessarily reflect the current course content.
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.
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
Accelerate Enterprise Software Engineering with PlatformlessWSO2
Key takeaways:
Challenges of building platforms and the benefits of platformless.
Key principles of platformless, including API-first, cloud-native middleware, platform engineering, and developer experience.
How Choreo enables the platformless experience.
How key concepts like application architecture, domain-driven design, zero trust, and cell-based architecture are inherently a part of Choreo.
Demo of an end-to-end app built and deployed on Choreo.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
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.
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
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.
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
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/
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
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.
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
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.
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
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.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
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.
7. www.erlang-solutions.com
Swift (Static Types)
More restrictions when
writing code.
It's harder to get along
with the compiler and be
good friends, but that's a
good thing.
SWIFT IS STATICALLY TYPED
OBJ-C (Dynamic Types)
More freedom when
writing code.
However, this magic
comes with the high cost
of experiencing undesired
behavior or potential
crashes at runtime.
9. www.erlang-solutions.com
Swift
You need to define specific
paths for null vs non-null
scenarios.
You are not allowed to
perform operations on a
nil variable that's
supposed not to be nil.
SWIFT HAS GOT OPTIONALS
OBJ-C
You can call a method
with a pointer variable
that is nil, and nothing
will happen.
This no-op leads to
unpredictable behavior.
10. www.erlang-solutions.com
SWIFT HAS GOT OPTIONALS
▸ We are forced to deal with null types
▸ Our code becomes safer
▸ We get used not to forget the error paths
▸ We code with intention
▸ Sometimes, we discover hidden scenarios that
haven't been defined in the specs yet.
▹ In consequence, we become more proactive
in the development loop.
12. www.erlang-solutions.com
SWIFT TAKES A FUNCTIONAL APPROACH
▸ Enums on steroids
▸ Pattern matching
▸ Functions as first-class citizens
▹ Perfect fit for completion closures
▹ Higher order functions
▹ Map, filter, reduce
▸ The importance of:
▹ Immutability
▹ Value types
▹ Avoiding state
▸ Testable code as a consequence
14. www.erlang-solutions.com
SWIFT IS A PROTOCOL ORIENTED PROGRAMMING LANGUAGE
▸ Protocols in Swift have been given more features
and are more encouraged
▸ Favor composition over inheritance
▸ Code is more extensible and flexible
▸ In combination with generics, they become way
powerful
18. www.erlang-solutions.com
SWIFT HAS GOT GENERICS
▸ With generics, we can solve general problems writing
less code...
▸ This concept encourages us to:
▹ Think of more layers of abstraction
▹ Solve problems in a generic way
▹ Find out common code architecture patterns in our
apps and generalize them
▹ Write more open-source code
20. www.erlang-solutions.com
MODELS IN SWIFT ARE MORE POWERFUL
Swift
You can define classes,
structs and enums.
They all have the same
power at their core.
OBJ-C
You can define classes,
structs and enums.
While classes is the only
one that has real power,
structs and enums are
vastly poor in comparison
(they come from C).
21. www.erlang-solutions.com
▸ Structs and Enums have been leveled up
▸ We started to use them much more
▸ We have learned:
▹ The value of value types
▹ How to avoid side effects
▹ Pattern-matching
▹ Why the if clause can be avoided
▹ The importance of immutability
MODELS IN SWIFT ARE MORE POWERFUL
23. www.erlang-solutions.com
SWIFT IS EASIER TO READ, WRITE, MAINTAIN, ETC...
▸ Cleaner syntax
▸ Better expressiveness
▸ Much more friendly
▸ More similar to modern languages
▸ Encourages more devs to learn it
▹ Community is getting way bigger
bye-bye-brackets.png
25. www.erlang-solutions.com
SWIFT IS OPEN SOURCE!
▸ Language is evolving around the community
▹ Proposals are encouraged
▹ So are discussions
▹ Much more documentation
▹ More people getting involved
▸ Bring Swift to other platforms
▹ Linux
▹ Android
▹ Windows
27. www.erlang-solutions.com
IN CONCLUSION
Swift has changed the way we
program and how we think of
programming.
We've got less error prone code
and more solid codebases.
We are also learning from other
paradigms, which makes us more
flexible and open-minded.