Getting started as a developer in any language or platform can be a struggle. This presentation contains all the little things I wish I knew when I started as an iOS developer.
Finding Some "Good" iOS Interview Questions for Employersnataliepo
Why is it so damn hard to find a good developer? How can I tell if someone knows enough to work with me without me losing my mind? We have little to no standards on how to quantify how qualified an iOS Developer is, so it makes it that much harder to really know what you're getting when you interview a potential candidate.
In this talk (given at CocoaHeads NYC in May 2015), we explore a set of interview questions, and, as a varied-level group, we took the challenge ourselves, and attempted to rate how difficult the questions would be for junior, senior, and expert level iOS Developers.
In this presentation I implement the MVVM pattern by combining Core Data and Reactive Cocoa. The MVVM pattern can use any data storage and binding libraries, but I chose Core Data and Reactive Cocoa since they are common on iOS. Demo at https://github.com/rob-brown/Demos/tree/master/MVVMDemo.
The basics of Reactive Cocoa. The tips and tricks in this presentation will cover almost all the use cases for Reactive Cocoa. Demo here: https://github.com/rob-brown/Demos/tree/master/RACDemo.
iOS State Preservation and RestorationRobert Brown
Covers iOS app state preservation and restoration with extra emphasis on NSCoding. WWCD 2012 session 208 glosses over some of the fine details of how NSCoding works. Understanding this foundation better helps in understanding state preservation and restoration.
Finding Some "Good" iOS Interview Questions for Employersnataliepo
Why is it so damn hard to find a good developer? How can I tell if someone knows enough to work with me without me losing my mind? We have little to no standards on how to quantify how qualified an iOS Developer is, so it makes it that much harder to really know what you're getting when you interview a potential candidate.
In this talk (given at CocoaHeads NYC in May 2015), we explore a set of interview questions, and, as a varied-level group, we took the challenge ourselves, and attempted to rate how difficult the questions would be for junior, senior, and expert level iOS Developers.
In this presentation I implement the MVVM pattern by combining Core Data and Reactive Cocoa. The MVVM pattern can use any data storage and binding libraries, but I chose Core Data and Reactive Cocoa since they are common on iOS. Demo at https://github.com/rob-brown/Demos/tree/master/MVVMDemo.
The basics of Reactive Cocoa. The tips and tricks in this presentation will cover almost all the use cases for Reactive Cocoa. Demo here: https://github.com/rob-brown/Demos/tree/master/RACDemo.
iOS State Preservation and RestorationRobert Brown
Covers iOS app state preservation and restoration with extra emphasis on NSCoding. WWCD 2012 session 208 glosses over some of the fine details of how NSCoding works. Understanding this foundation better helps in understanding state preservation and restoration.
For the best viewing experience, please download this presentation and view it in Keynote. SlideShare doesn't handle the animations well.
Blocks are a powerful language feature. However, they are underused and under-appreciated in Objective-C, especially compared to Ruby. My intent is to make blocks easy to understand and show many practical uses of blocks.
Core Data can be intimidating at first. With a proper introduction, the transition into using Core Data can be much smoother. This presentation gives an overview of the core and advanced parts of Core Data.
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...QADay
Lviv Direction QADay 2024 (Professional Development)
КАТЕРИНА АБЗЯТОВА
«Ефективне планування тестування ключові аспекти та практичні поради»
https://linktr.ee/qadayua
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
For the best viewing experience, please download this presentation and view it in Keynote. SlideShare doesn't handle the animations well.
Blocks are a powerful language feature. However, they are underused and under-appreciated in Objective-C, especially compared to Ruby. My intent is to make blocks easy to understand and show many practical uses of blocks.
Core Data can be intimidating at first. With a proper introduction, the transition into using Core Data can be much smoother. This presentation gives an overview of the core and advanced parts of Core Data.
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...QADay
Lviv Direction QADay 2024 (Professional Development)
КАТЕРИНА АБЗЯТОВА
«Ефективне планування тестування ключові аспекти та практичні поради»
https://linktr.ee/qadayua
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
The field of Information retrieval (IR) is currently undergoing a transformative shift, at least partly due to the emerging applications of generative AI to information access. In this talk, we will deliberate on the sociotechnical implications of generative AI for information access. We will argue that there is both a critical necessity and an exciting opportunity for the IR community to re-center our research agendas on societal needs while dismantling the artificial separation between the work on fairness, accountability, transparency, and ethics in IR and the rest of IR research. Instead of adopting a reactionary strategy of trying to mitigate potential social harms from emerging technologies, the community should aim to proactively set the research agenda for the kinds of systems we should build inspired by diverse explicitly stated sociotechnical imaginaries. The sociotechnical imaginaries that underpin the design and development of information access technologies needs to be explicitly articulated, and we need to develop theories of change in context of these diverse perspectives. Our guiding future imaginaries must be informed by other academic fields, such as democratic theory and critical theory, and should be co-developed with social science scholars, legal scholars, civil rights and social justice activists, and artists, among others.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Let's dive deeper into the world of ODC! Ricardo Alves (OutSystems) will join us to tell all about the new Data Fabric. After that, Sezen de Bruijn (OutSystems) will get into the details on how to best design a sturdy architecture within ODC.
2. So You Want to be a Mac/
iOS Developer?
What to expect:
This presentation contains everything I wish I knew
two years ago
I will focus on Mac and iOS development, but the
ideas apply to other specialties
3. So You Want to be a Mac/
iOS Developer?
What not to expect:
This is not an introduction to Objective-C, Xcode, or
any other tools.
5. Find a Mentor
Find one to three people who you can ask questions
When you hit a problem, spend an hour trying to figure
it out on your own
If you can’t solve it after an hour, ask your mentor
6. Find a Good Book
Mac/iOS:
Objective-C Programming: The Big Nerd Ranch
Guide
Beginning iOS 5 Development
iOS Programming: The Big Nerd Ranch Guide
7. Find a Good Book
The Pragmatic Bookshelf
iOS SDK Development
Core Data (out of print but available on Amazon)
Core Animation
8. Find a Good Book
The Pragmatic Bookshelf
iOS Recipes
Designed for Use
iPad Programming
9. Find a Good Book
Design:
Design Patterns: Elements of Reusable Object-
oriented Software
The Design of Everyday Things
10. Find a Good Book
Maintenance:
Refactoring: Improving the Design of Existing Code
Code Complete
11. Find a Good Book
Management:
Peopleware: Productive Projects and Teams
The Mythical Man Month
Driving Technical Change
13. Stack Overflow
Q&A for developers by developers
Lots of developers have the same problems as you
If someone hasn’t already asked your question, you
can ask the community yourself
14. LinkedIn
Start right away, even if you don’t have a good résumé
Connections are more valuable than skills
Skills are important too
Recruiters can’t find enough iOS developers
Link to blog and portfolio
15. Twitter
@daringfireball: John Gruber—Straightforward Apple
news and opinions. WARNING: Coarse language!
@mattgemmell: Matt Gemmel—Great iOS dev and
blogger. WARNING: Coarse language!
@cocoanetics: Oliver Drobnik—Another great iOS
developer and blogger.
16. Twitter
@gzicherm: Gabe Zicherman—Authority on
gamification. WARNING: Coarse language!
@bdudney: Bill Dudney—Former Apple engineer and
great author for The Pragmatic Bookshelf.
@mzarra: Marcus Zarra—Author for The Pragmatic
Bookshelf and Cocoa Is My GirlFriend.
17. Twitter
@glyphish: Glyphish—Quality, inexpensive iOS icons.
@macrumors: MacRumors—Most “reliable” Apple
rumors.
@macrumorslive: MacRumors—Live tweets Apple events.
Good for events that aren’t broadcasted.
18. Twitter
@darthvader: Darth Vader (obviously)—Great comic
relief for nerds.
@davedelong: Dave Delong—Apple employee and
amazing developer.
@robby_brown: Robert Brown—Hey, that’s me!
Independent iOS contractor and blogger. No brownie
points for following me.
20. Learn Best Practice
Most developers/books/tutorials don’t follow good
practice :(
Design patterns are generic best practices
Other best practices are language specific
Follow the naming conventions of the language
Develop a coding standard
21. Learn Best Practice
Find a good mentor
It’s hard to learn best practice on your own
Do code reviews and pair programming
22. Learn to Design Code
Design Pattern: formalized description of best practice
There is a vast difference between code that works
now and code that will continue to work in the future
Mac/iOS naturally pushes good design patterns
23. Learn to Design UI
Design for mobile first!
If your app doesn’t look good, no one will buy it even if
it has amazing functionality
The Mac/iOS community naturally gravitates toward
good UI/UX
Be aware of why and how other app are designed.
24. Learn to Work in Teams
Most interesting software is written by a team
Good communication skills are critical
Knowing how to design helps to subdivide projects
A good coder is not necessarily a good project
manager and vice versa
25. Learn to Work in Teams
Do code reviews and pair programming
Use a version control system (VCS)
EVERY developer MUST use version control
27. Github
Git is the standard VCS
Github is an open source community
Github has many reusable Mac/iOS components.
28. Blogging
Teaching others helps reinforce learning
Writing skills are critical
Great Book: Technical Blogging
My Blog: Rob's Program Knowledge Base
A collection of obscure errors and elegant solutions
30. Find a Specialty
Find an area that interests you and dig deep
You should enjoy what you do
Broad knowledge is critical, but deep knowledge gets
the good jobs
My specialties: Multithreading, Core Data, UI/UX Design
31. Be a Mentor
Teaching others helps reinforce learning
Return the favor for those who mentored you
32. Give Presentations
Teaching others helps reinforce learning
Communication skills are critical
Slide Share: presentation sharing service
My Presentations
37. Summary
Know who and where to get help
Network and develop good reputation
Have a portfolio both of code and writing
Be involved in the community
Help others
38. Want to Learn More?
Lots of links in previous slides
http://penny-arcade.com/patv/episode/so-you-want-
to-be-a-developer-part-1
http://penny-arcade.com/patv/episode/so-you-want-
to-be-a-developer-part-2
Tips are divided into categories: beginner, intermediate, expert, and master. The line between categories is fuzzy.\nThis is not an introduction to Objective-C or programming Mac/iOS.\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Usually there is good reason why developers stray from good practice, but this is rarely stated. Even more rare is to give a full example of the difference. \n
\n
\n
Functionality is critical too.\nThere is a great tendency to copy other app’s UI design without asking why or how. A design that works for one app may not be appropriate for another. \n
Programming in a team is very different than working alone.\nYou should be easy to get along with. \nEven open source projects need to follow good team structure and practice.\n
\n
\n
\n
Knowing how to use a client and the terminal is very valuable. Clients can save a lot of time, prevent mistakes, and visualize information better. However, there are times when you may not have your favorite client available or the client may not support a needed feature. \n