Back to Basics WordCamp Chicago 2011 TJList TJList
This document is a presentation about essential HTML and CSS skills for bloggers and business owners. It discusses how WordPress alone is not enough and basic coding skills are still needed. It encourages learning HTML semantics and CSS properties like the box model. It provides examples of improving markup and styling with CSS. Resources for learning HTML and CSS are also included.
Dylan Jones, a student at Salford City College Eccles Sixth Form Centre, created a 3D model of a sidekick character for his BTEC Level 3 Extended Diploma in Creative Media Production Games Design unit on 3D modelling. Over the course of several weeks, he drew designs, began modelling the character, added details like arms, hands, a head, and a backpack, applied textures and colors, and finally imported the completed model into a 3D software program to take screenshots.
The document summarizes the author's experience starting and maintaining a blog called the "Electronic Museum" blog. It discusses how the blog has evolved from an initial complex site meant for museum professionals into a simpler WordPress blog. The author details lessons learned like keeping it simple, using blogging to build an audience, and focusing on regular posting to drive traffic over time.
The document discusses steps for developing a CSS framework, including defining layout rules, framework files, resets, grids and units, forms, tables, and generic classes. The framework is designed to be easily reusable, have a short source code, increase productivity, and decrease bugs. Key steps involve defining the layout, grids and units, resets, typography, forms and tables, and generic classes through separate CSS files.
Managing responsive websites with css preprocessors presented at Penn State Webconference Tuesday June 23, 2015. Sass and Less preprocessors simplify managing css for responsive websites.
This document discusses responsive design and CSS frameworks. It explains that responsive design allows pages to adapt to different screen sizes using liquid layouts, scaling images, viewport meta tags, and media queries. Media queries allow applying styles based on device capabilities. CSS frameworks provide pre-built CSS classes and tools to make working with CSS easier. Popular frameworks include Bootstrap and Blueprint, which offer grid systems for multi-column layouts. CSS preprocessors allow variables, inheritance, and other programming techniques to be used with CSS.
This document discusses rolling your own CSS framework by starting from scratch rather than using an existing framework. It recommends using CSS preprocessors like SASS or LESS to write CSS code. It also provides many links to additional CSS resources on topics like responsive design, grids, typography, and existing frameworks. The document is presented by Mike Aparicio and encourages the reader to contact him with any other questions.
Back to Basics WordCamp Chicago 2011 TJList TJList
This document is a presentation about essential HTML and CSS skills for bloggers and business owners. It discusses how WordPress alone is not enough and basic coding skills are still needed. It encourages learning HTML semantics and CSS properties like the box model. It provides examples of improving markup and styling with CSS. Resources for learning HTML and CSS are also included.
Dylan Jones, a student at Salford City College Eccles Sixth Form Centre, created a 3D model of a sidekick character for his BTEC Level 3 Extended Diploma in Creative Media Production Games Design unit on 3D modelling. Over the course of several weeks, he drew designs, began modelling the character, added details like arms, hands, a head, and a backpack, applied textures and colors, and finally imported the completed model into a 3D software program to take screenshots.
The document summarizes the author's experience starting and maintaining a blog called the "Electronic Museum" blog. It discusses how the blog has evolved from an initial complex site meant for museum professionals into a simpler WordPress blog. The author details lessons learned like keeping it simple, using blogging to build an audience, and focusing on regular posting to drive traffic over time.
The document discusses steps for developing a CSS framework, including defining layout rules, framework files, resets, grids and units, forms, tables, and generic classes. The framework is designed to be easily reusable, have a short source code, increase productivity, and decrease bugs. Key steps involve defining the layout, grids and units, resets, typography, forms and tables, and generic classes through separate CSS files.
Managing responsive websites with css preprocessors presented at Penn State Webconference Tuesday June 23, 2015. Sass and Less preprocessors simplify managing css for responsive websites.
This document discusses responsive design and CSS frameworks. It explains that responsive design allows pages to adapt to different screen sizes using liquid layouts, scaling images, viewport meta tags, and media queries. Media queries allow applying styles based on device capabilities. CSS frameworks provide pre-built CSS classes and tools to make working with CSS easier. Popular frameworks include Bootstrap and Blueprint, which offer grid systems for multi-column layouts. CSS preprocessors allow variables, inheritance, and other programming techniques to be used with CSS.
This document discusses rolling your own CSS framework by starting from scratch rather than using an existing framework. It recommends using CSS preprocessors like SASS or LESS to write CSS code. It also provides many links to additional CSS resources on topics like responsive design, grids, typography, and existing frameworks. The document is presented by Mike Aparicio and encourages the reader to contact him with any other questions.
Designing an Enterprise CSS Framework is Hard, Stephanie RewisFuture Insights
Taken from the Future of Web Design, San Francisco 2015 Conference. https://futureofwebdesign.com/san-francisco-2015/
It seems that not a week goes by without a shiny new framework of some type — be it CSS or JS. But no matter how awesome they are, each have shortcomings and idiosyncrasies that invariably make you ask, 'Why?' Now imagine someone gave you the ability to start from scratch to create your own framework. No strings. No preconceptions — well, except that it has to be enterprise scale, platform agnostic, and work in a whole host of disparate situations. In this session, Stephanie will talk about some of the challenges, hurdles, tradeoffs, and unique decisions Salesforce UX made on the way to building an enterprise framework.
The document discusses visual regression testing, which is a type of software testing used to detect unexpected changes to the UI. It works by taking screenshots of an application's user interface at different states and comparing them to reference screenshots to identify visual differences. Tools mentioned that can be used for visual regression testing include PhantomCSS, Wraith, Grunt-photobox, and Needle. The document emphasizes that visual regression testing is important because even small UI changes can have unintended consequences, and it helps ensure the user experience remains consistent.
The document discusses making your own CSS framework to manage multiple websites with limited resources. It recommends starting with a CSS reset, basic structural elements, and columns for layout. Future-proof the framework to match HTML5. Keep colors, images, and styling out of the framework. Build reusable widgets and allow for design freedom and individuality across sites. The initial version may be too constricting without flexibility. Add optional "flare" like boxes and slideshows once the basics are established. The framework should be easily upgradable and accessible across managed sites.
The document discusses grid systems in web design. It explains that grid systems use ratios and measurements to construct layouts with fixed or flexible widths. For fixed grids, the canvas size is based on screen resolution, while flexible grids scale to browser windows. The document also describes creating grids in Photoshop, using background images for alignment, and the 960 Grid System CSS framework which enables rapid prototyping with 12 or 16 column grids within a 960px container.
This document discusses responsive design and CSS frameworks. It defines responsive design as designing websites that respond to different screen sizes, platforms, and orientations. Responsive design uses media queries and CSS techniques to create a single website that adjusts its layout and features based on how it is viewed. Some key benefits of responsive design include being content focused, cost effective, cross-platform, easy to manage, and SEO friendly. The document then discusses responsive strategies like breaking points, dynamic fonts, flexible grid layouts, and content choreography. It also covers responsive design tools like the developer toolbar and responsive design mode in browsers. Finally, it lists some popular CSS frameworks and other libraries that can be used for responsive design.
This document is a teenage web designer's portfolio which introduces himself as Sam Franklin and provides his contact information. It discusses design principles for websites targeting teenagers, advocating for rounded corners, quick loading times, compatibility across browsers, valid code, and an emphasis on games with bold colors and minimal text over flashy intros or unnecessary elements. The designer notes most teens don't appreciate or understand good design principles despite valuing usability.
1. The document discusses using CSS to create visual elements like shapes, logos, and icons instead of images for performance, maintainability, and resolution independence reasons.
2. It provides examples of how to create basic shapes like rectangles, circles, and triangles using CSS properties like border-radius, gradients, and positioning.
3. The document also covers techniques for generating HTML elements, using pseudo-elements, and manipulating elements with transforms to create effects like masks and shadows.
I have been working with NHibernate for manner of couple of years and I never seriously thought about how it is built from inside, what is the architecture of NH, how much it depends on ADO.NET, how they made reflection to work fast, how high code quality is, which people worked on it and what was the history of it. The other day, I had chance to start mine own small ORM project and all of this questions raised for me. Thus I will do my best to share everything I discovered in NHibernate surgery.
This document provides an introduction to the CSS Masterclass course by Arkmont.com. It discusses what CSS is and how it is used to style web pages. It also covers different ways to add CSS to a page, including external, internal, and inline styles. Additionally, it explains CSS selectors like tags, classes, and IDs which are used to target specific HTML elements for styling. The document provides examples of CSS properties and values that are used to define styles.
1) The document outlines the plans for the final class meeting, which includes completing a memo about the ACE projects, finishing the web design portfolios, and answering evaluation questions.
2) Students have the option to code their portfolio from scratch or use WordPress, and the instructor will provide guidance on both options.
3) There were some issues with the print materials project that need to be resolved by sending all design assets to the instructor before the class ends.
The document discusses Nathan Smith's presentation on the 960 Grid System. Some key points:
- Nathan Smith is the principal UI architect at projekt202 and advocates for understanding frameworks as tools rather than "black boxes".
- The 960 Grid System provides commonly used dimensions based on a 960 pixel width with 12 or 16 column variants that can be used separately or together.
- Code examples show how the grid system divides pages into columns and allows for nested grids and column rearranging with CSS classes.
1. The document discusses adapting web design processes for adaptive or responsive design.
2. It outlines the traditional web design process and compares it to designing adaptively, noting that adaptive design only requires learning one line of code - media queries.
3. The document encourages starting the design process from the outside and working in, then coding from the inside out. Gracefully degrading designs and progressively enhancing code is recommended.
The document provides tips for writing a screenplay in 3 phases: preparation, brainstorming, and editing. In preparation, one should read screenplays, choose a software and genre. Brainstorming involves noting many ideas and refining them. In editing, read scripts aloud, get feedback, and remove unnecessary content. Following these phases helps organize the screenwriting process.
1) The document provides answers to students' questions about remaining coursework, projects, and grades. It also addresses concerns about the upcoming web design project.
2) The professor discusses various options for creating wireframes and mockups to plan out website designs, including using pencil and paper, cut-and-paste methods, Photoshop, and online wireframing tools.
3) Examples of good and bad website designs are presented to illustrate principles of simplicity, functionality, and form following function in interface design. The next class will focus on creating logos to brand themselves for the web project.
Sharing is Caring - Web Development ResourcesTrevor Barnes
August 2014 Michigan State University WebDev Forum - "Sharing is Caring"
With web development changing so quickly these days, it’s more important than ever for us to share with fellow developers. We’ll take a look at some of our favorite front-end tools, techniques, and resources that we rely on to keep up to date with a modern web development workflow.
This document discusses several web 2.0 technologies that can be used in the classroom including Blogger, Flashvortex, Sync.in, Ediscio, and Discovery Education. It provides information on setting up accounts for each tool, how to use their features, potential benefits and difficulties of using them for educational purposes. Blogger allows teachers to create class blogs for students to contribute to. Flashvortex provides banners and widgets that can be added to websites. Sync.in enables real-time collaborative writing. Ediscio is an online flashcard tool. The document analyzes the pros and cons of each for classroom learning.
This document discusses several web 2.0 technologies that can be used in the classroom including Blogger, Flashvortex, Sync.in, Ediscio, and Discovery Education. It provides information on setting up accounts for each tool, how to use their features, potential benefits and difficulties of using them for educational purposes. Blogger allows teachers to create class blogs for students to document classroom activities. Flashvortex provides free banners and widgets for classroom websites. Sync.in enables real-time collaborative writing. Ediscio is an online flashcard tool and Discovery Education is a digital resource library.
Designing an Enterprise CSS Framework is Hard, Stephanie RewisFuture Insights
Taken from the Future of Web Design, San Francisco 2015 Conference. https://futureofwebdesign.com/san-francisco-2015/
It seems that not a week goes by without a shiny new framework of some type — be it CSS or JS. But no matter how awesome they are, each have shortcomings and idiosyncrasies that invariably make you ask, 'Why?' Now imagine someone gave you the ability to start from scratch to create your own framework. No strings. No preconceptions — well, except that it has to be enterprise scale, platform agnostic, and work in a whole host of disparate situations. In this session, Stephanie will talk about some of the challenges, hurdles, tradeoffs, and unique decisions Salesforce UX made on the way to building an enterprise framework.
The document discusses visual regression testing, which is a type of software testing used to detect unexpected changes to the UI. It works by taking screenshots of an application's user interface at different states and comparing them to reference screenshots to identify visual differences. Tools mentioned that can be used for visual regression testing include PhantomCSS, Wraith, Grunt-photobox, and Needle. The document emphasizes that visual regression testing is important because even small UI changes can have unintended consequences, and it helps ensure the user experience remains consistent.
The document discusses making your own CSS framework to manage multiple websites with limited resources. It recommends starting with a CSS reset, basic structural elements, and columns for layout. Future-proof the framework to match HTML5. Keep colors, images, and styling out of the framework. Build reusable widgets and allow for design freedom and individuality across sites. The initial version may be too constricting without flexibility. Add optional "flare" like boxes and slideshows once the basics are established. The framework should be easily upgradable and accessible across managed sites.
The document discusses grid systems in web design. It explains that grid systems use ratios and measurements to construct layouts with fixed or flexible widths. For fixed grids, the canvas size is based on screen resolution, while flexible grids scale to browser windows. The document also describes creating grids in Photoshop, using background images for alignment, and the 960 Grid System CSS framework which enables rapid prototyping with 12 or 16 column grids within a 960px container.
This document discusses responsive design and CSS frameworks. It defines responsive design as designing websites that respond to different screen sizes, platforms, and orientations. Responsive design uses media queries and CSS techniques to create a single website that adjusts its layout and features based on how it is viewed. Some key benefits of responsive design include being content focused, cost effective, cross-platform, easy to manage, and SEO friendly. The document then discusses responsive strategies like breaking points, dynamic fonts, flexible grid layouts, and content choreography. It also covers responsive design tools like the developer toolbar and responsive design mode in browsers. Finally, it lists some popular CSS frameworks and other libraries that can be used for responsive design.
This document is a teenage web designer's portfolio which introduces himself as Sam Franklin and provides his contact information. It discusses design principles for websites targeting teenagers, advocating for rounded corners, quick loading times, compatibility across browsers, valid code, and an emphasis on games with bold colors and minimal text over flashy intros or unnecessary elements. The designer notes most teens don't appreciate or understand good design principles despite valuing usability.
1. The document discusses using CSS to create visual elements like shapes, logos, and icons instead of images for performance, maintainability, and resolution independence reasons.
2. It provides examples of how to create basic shapes like rectangles, circles, and triangles using CSS properties like border-radius, gradients, and positioning.
3. The document also covers techniques for generating HTML elements, using pseudo-elements, and manipulating elements with transforms to create effects like masks and shadows.
I have been working with NHibernate for manner of couple of years and I never seriously thought about how it is built from inside, what is the architecture of NH, how much it depends on ADO.NET, how they made reflection to work fast, how high code quality is, which people worked on it and what was the history of it. The other day, I had chance to start mine own small ORM project and all of this questions raised for me. Thus I will do my best to share everything I discovered in NHibernate surgery.
This document provides an introduction to the CSS Masterclass course by Arkmont.com. It discusses what CSS is and how it is used to style web pages. It also covers different ways to add CSS to a page, including external, internal, and inline styles. Additionally, it explains CSS selectors like tags, classes, and IDs which are used to target specific HTML elements for styling. The document provides examples of CSS properties and values that are used to define styles.
1) The document outlines the plans for the final class meeting, which includes completing a memo about the ACE projects, finishing the web design portfolios, and answering evaluation questions.
2) Students have the option to code their portfolio from scratch or use WordPress, and the instructor will provide guidance on both options.
3) There were some issues with the print materials project that need to be resolved by sending all design assets to the instructor before the class ends.
The document discusses Nathan Smith's presentation on the 960 Grid System. Some key points:
- Nathan Smith is the principal UI architect at projekt202 and advocates for understanding frameworks as tools rather than "black boxes".
- The 960 Grid System provides commonly used dimensions based on a 960 pixel width with 12 or 16 column variants that can be used separately or together.
- Code examples show how the grid system divides pages into columns and allows for nested grids and column rearranging with CSS classes.
1. The document discusses adapting web design processes for adaptive or responsive design.
2. It outlines the traditional web design process and compares it to designing adaptively, noting that adaptive design only requires learning one line of code - media queries.
3. The document encourages starting the design process from the outside and working in, then coding from the inside out. Gracefully degrading designs and progressively enhancing code is recommended.
The document provides tips for writing a screenplay in 3 phases: preparation, brainstorming, and editing. In preparation, one should read screenplays, choose a software and genre. Brainstorming involves noting many ideas and refining them. In editing, read scripts aloud, get feedback, and remove unnecessary content. Following these phases helps organize the screenwriting process.
1) The document provides answers to students' questions about remaining coursework, projects, and grades. It also addresses concerns about the upcoming web design project.
2) The professor discusses various options for creating wireframes and mockups to plan out website designs, including using pencil and paper, cut-and-paste methods, Photoshop, and online wireframing tools.
3) Examples of good and bad website designs are presented to illustrate principles of simplicity, functionality, and form following function in interface design. The next class will focus on creating logos to brand themselves for the web project.
Sharing is Caring - Web Development ResourcesTrevor Barnes
August 2014 Michigan State University WebDev Forum - "Sharing is Caring"
With web development changing so quickly these days, it’s more important than ever for us to share with fellow developers. We’ll take a look at some of our favorite front-end tools, techniques, and resources that we rely on to keep up to date with a modern web development workflow.
This document discusses several web 2.0 technologies that can be used in the classroom including Blogger, Flashvortex, Sync.in, Ediscio, and Discovery Education. It provides information on setting up accounts for each tool, how to use their features, potential benefits and difficulties of using them for educational purposes. Blogger allows teachers to create class blogs for students to contribute to. Flashvortex provides banners and widgets that can be added to websites. Sync.in enables real-time collaborative writing. Ediscio is an online flashcard tool. The document analyzes the pros and cons of each for classroom learning.
This document discusses several web 2.0 technologies that can be used in the classroom including Blogger, Flashvortex, Sync.in, Ediscio, and Discovery Education. It provides information on setting up accounts for each tool, how to use their features, potential benefits and difficulties of using them for educational purposes. Blogger allows teachers to create class blogs for students to document classroom activities. Flashvortex provides free banners and widgets for classroom websites. Sync.in enables real-time collaborative writing. Ediscio is an online flashcard tool and Discovery Education is a digital resource library.
This document discusses several web 2.0 technologies that can be used in the classroom including Blogger, Flashvortex, Sync.in, Ediscio, and Discovery Education. It provides information on setting up accounts for each tool, how to use their features, potential benefits and difficulties of using them for educational purposes. Blogger allows teachers to create class blogs for students to contribute to. Flashvortex provides banners and widgets that can be added to websites. Sync.in enables real-time collaborative writing. Ediscio is an online flashcard tool. The document analyzes the pros and cons of each for classroom learning.
Concept diagrams are one of the best bang-for-buck deliverables available to today’s UX designer. In its most basic form, a concept diagram uses nouns connected by verbs to describe a system, idea, or application. It can be a sophisticated deliverable or a quick-and-dirty sketch. The technique is not unlike diagramming sentences in elementary school — though it tends to be quite a bit more fun.
This is a fast-paced primer on building better concept diagrams and using them to understand relationships between ideas in new ways. In particular, we’ll examine how to use concept diagrams to represent domain expertise and create a mechanism for transferring knowledge between stakeholders, subject matter experts, and designers.
Learn the simple rules for creating concept diagrams, when you will and won’t want to create one, and what to do with it once you have it. Understand how concept diagrams differ from similar techniques such as affinity diagramming and mindmapping, and when best to apply each in your process.
Variations on this talk have been presented at the 2014 Information Architecture Summit in San Diego, MinneWebCon 2014 at the University of Minnesota, Web 2013 at Penn State, and the 2014 University of Illinois Web Conference.
This document discusses reusing code to save time when building websites. It recommends learning to read code from other sources as a way to improve one's own skills. The DRY principle of "Don't Repeat Yourself" is introduced to encourage reusing code rather than rewriting it. Popular content management systems like Wordpress and frameworks like Twitter Bootstrap are presented as ways to build upon existing templates and tools to develop websites more efficiently without starting from scratch.
This document provides information about setting up free websites to generate affiliate income. It discusses finding a niche topic, such as singing lessons, and products to promote for that niche, such as an online vocal coaching course. It then covers conducting keyword research and checking traffic and competition for relevant keywords. The document advocates using free content from sources like articles, videos, and podcasts to create helpful, non-salesy pages. Setting up accounts on free website platforms is presented as a low-effort way to start generating affiliate commissions and traffic for future websites. In summary, the document outlines an SEO-focused process for selecting a niche, researching products and keywords, gathering free content, and setting up basic free websites to affiliate market niche products
Yoshi Sakai, founder and CEO of Bluemoo Inc, gave a presentation on their new content management system (CMS). Some key points:
- The new CMS allows for agile homepage building with a sliding top menu and page editing with no page reloads.
- It uses an all-in-one package distribution and independent HTML headers for each page.
- The WYSIWYG editor allows image and flash uploading with file management.
- The CMS is aimed to be legacy-proof and future-focused.
- It is currently available for $99 in a pilot version, which normally costs $299, and includes hosting, updates and support.
Similar to Lessons Learned From Building Your Own CSS Framework (20)
This presentation by Nathaniel Lane, Associate Professor in Economics at Oxford University, was made during the discussion “Pro-competitive Industrial Policy” held at the 143rd meeting of the OECD Competition Committee on 12 June 2024. More papers and presentations on the topic can be found at oe.cd/pcip.
This presentation was uploaded with the author’s consent.
Suzanne Lagerweij - Influence Without Power - Why Empathy is Your Best Friend...Suzanne Lagerweij
This is a workshop about communication and collaboration. We will experience how we can analyze the reasons for resistance to change (exercise 1) and practice how to improve our conversation style and be more in control and effective in the way we communicate (exercise 2).
This session will use Dave Gray’s Empathy Mapping, Argyris’ Ladder of Inference and The Four Rs from Agile Conversations (Squirrel and Fredrick).
Abstract:
Let’s talk about powerful conversations! We all know how to lead a constructive conversation, right? Then why is it so difficult to have those conversations with people at work, especially those in powerful positions that show resistance to change?
Learning to control and direct conversations takes understanding and practice.
We can combine our innate empathy with our analytical skills to gain a deeper understanding of complex situations at work. Join this session to learn how to prepare for difficult conversations and how to improve our agile conversations in order to be more influential without power. We will use Dave Gray’s Empathy Mapping, Argyris’ Ladder of Inference and The Four Rs from Agile Conversations (Squirrel and Fredrick).
In the session you will experience how preparing and reflecting on your conversation can help you be more influential at work. You will learn how to communicate more effectively with the people needed to achieve positive change. You will leave with a self-revised version of a difficult conversation and a practical model to use when you get back to work.
Come learn more on how to become a real influencer!
This presentation by Juraj Čorba, Chair of OECD Working Party on Artificial Intelligence Governance (AIGO), was made during the discussion “Artificial Intelligence, Data and Competition” held at the 143rd meeting of the OECD Competition Committee on 12 June 2024. More papers and presentations on the topic can be found at oe.cd/aicomp.
This presentation was uploaded with the author’s consent.
This presentation by Thibault Schrepel, Associate Professor of Law at Vrije Universiteit Amsterdam University, was made during the discussion “Artificial Intelligence, Data and Competition” held at the 143rd meeting of the OECD Competition Committee on 12 June 2024. More papers and presentations on the topic can be found at oe.cd/aicomp.
This presentation was uploaded with the author’s consent.
Carrer goals.pptx and their importance in real lifeartemacademy2
Career goals serve as a roadmap for individuals, guiding them toward achieving long-term professional aspirations and personal fulfillment. Establishing clear career goals enables professionals to focus their efforts on developing specific skills, gaining relevant experience, and making strategic decisions that align with their desired career trajectory. By setting both short-term and long-term objectives, individuals can systematically track their progress, make necessary adjustments, and stay motivated. Short-term goals often include acquiring new qualifications, mastering particular competencies, or securing a specific role, while long-term goals might encompass reaching executive positions, becoming industry experts, or launching entrepreneurial ventures.
Moreover, having well-defined career goals fosters a sense of purpose and direction, enhancing job satisfaction and overall productivity. It encourages continuous learning and adaptation, as professionals remain attuned to industry trends and evolving job market demands. Career goals also facilitate better time management and resource allocation, as individuals prioritize tasks and opportunities that advance their professional growth. In addition, articulating career goals can aid in networking and mentorship, as it allows individuals to communicate their aspirations clearly to potential mentors, colleagues, and employers, thereby opening doors to valuable guidance and support. Ultimately, career goals are integral to personal and professional development, driving individuals toward sustained success and fulfillment in their chosen fields.
This presentation by OECD, OECD Secretariat, was made during the discussion “Artificial Intelligence, Data and Competition” held at the 143rd meeting of the OECD Competition Committee on 12 June 2024. More papers and presentations on the topic can be found at oe.cd/aicomp.
This presentation was uploaded with the author’s consent.
XP 2024 presentation: A New Look to Leadershipsamililja
Presentation slides from XP2024 conference, Bolzano IT. The slides describe a new view to leadership and combines it with anthro-complexity (aka cynefin).
This presentation by OECD, OECD Secretariat, was made during the discussion “Competition and Regulation in Professions and Occupations” held at the 77th meeting of the OECD Working Party No. 2 on Competition and Regulation on 10 June 2024. More papers and presentations on the topic can be found at oe.cd/crps.
This presentation was uploaded with the author’s consent.
This presentation by Yong Lim, Professor of Economic Law at Seoul National University School of Law, was made during the discussion “Artificial Intelligence, Data and Competition” held at the 143rd meeting of the OECD Competition Committee on 12 June 2024. More papers and presentations on the topic can be found at oe.cd/aicomp.
This presentation was uploaded with the author’s consent.
Mastering the Concepts Tested in the Databricks Certified Data Engineer Assoc...SkillCertProExams
• For a full set of 760+ questions. Go to
https://skillcertpro.com/product/databricks-certified-data-engineer-associate-exam-questions/
• SkillCertPro offers detailed explanations to each question which helps to understand the concepts better.
• It is recommended to score above 85% in SkillCertPro exams before attempting a real exam.
• SkillCertPro updates exam questions every 2 weeks.
• You will get life time access and life time free updates
• SkillCertPro assures 100% pass guarantee in first attempt.
26. @mixin padding($args) {
...
// allow for processing of various combos of arguments.
...
// it goes on forever
...
...
...
@return $padding-values;
}
@sonniesedge
Thanks for the introduction.
I’m Charlie Owen.
I live and work here in Berlin. Moved here about 15 months ago from London and I love it.
I swear it’s a cliche, but it was the Club Mate that hooked me.
Anyway, I’m a frontend developer. I specialise in design systems and large scale sass.
Accessibility and ease of use are my thang.
I’ve worked on a few big projects and at some big organisations
including producing some of Rupert Murdoch’s Sky broadcast channels.
The AAT - the Association of Accounting Technicians, based in the UK.
Sounds boring, but this is actually a global membership-based organisation, serving hundreds thousands of people around the world.
It was my first introduction to large-scale design systems and a huge influencing factor on this talk
I also worked at the BBC, where I built the site for last years British national elections.
You know the one where we elected David Cameron. Remember him?
Nobody mention Brexit.
This was an amazing technological challenge.
We had to support every kind of browser out there, including the ones we hate, like IE6. This had to work on desktop, on mobile.
Fantastic fun working with everything department in the BBC.
All the hard work was so worth it.
On election night, this was being viewed by 18 million people PER SECOND.
Half of UK saw it over a 24 hour period.
That was a terrifying thing where you REALLY could not fuck up.
So, getting on to the point of this talk…
First of all, what is a framework?
Well, that’s something that’s not really easily defined.
We’re a bit sloppy with language in this area. So many terms that we use lazily.
But for the purposes of this, I’m taking a framework to be, REALLY BROADLY, “something that helps you build CSS more efficiently”.
So does that mean something like Bootstrap?
I mean, bootstrap let’s you build a website, yeah?
But does it? Bootstrap is mostly just something that you drop onto a website.
This may be harsh, but to me, Bootstrap is a collection of design patterns. It’s not really something that allows you to build your own code. If you’ve ever used it, you know you end up overriding everything.
(Forgive me, I know about some of the mixins available. But they’re not really forefront, are they?)
Perhaps Bourbon is a better example.
It’s a collection of Sass mixins and functions that you can use to output your own CSS.
But to me, although its quite amazing and I’m in awe of it, it’s not a framework framework as such.
It’s more a collection of tools, that you can choose your own way of using.
I guess to me, a CSS framework is something in-between.
Something as powerful as Bourbon, that allows you to easily and quickly produce something like Bootstrap.
A framework is more… opinionated.
Something documented, with an input, a way of working and an output.
To use a terrible analogy: a framework is not just the hammer in your toolkit. It’s not just the toolkit on its own. It’s the combination of tools, experience and manuals, such that allow you to start and finish a project efficiently for a client’s needs.
Dave Ruperts said that we should be delivering a “series of mini-Bootstraps” to each of our clients. We should ideally be handing them a complete pattern library, so that they can build and extend their own websites.
And that’s why I built my own system.
It’s called Loom. It’s very new, and a work in progress, but it’s a complete framework designed to help people like me, and you, to build pattern libraries faster.
It’s not like Bootstrap. It’s not a collection of pre-made patterns that can be dropped into a site.
It’s not like Bourbon, which focusses on the generation tools themselves.
It’s a factory. A production line. It’s a system that allows you to churn out or weave your own pattern libraries.
I don’t want to concentrate too much here on how it works. If you’re into that, go and look it up on github and take a peek.
But perhaps an overview is worth it
it’s a Sass framework that takes in various variables and settings and uses them to spit out CSS.
It’s built with design systems in mind, which means that It’s designed to produce components in a systematic, standardised way.
It’s nothing NEW. Things like this exist already. And all the components have been around for years.
But I hope that it could be come something bigger.
Design systems are really important.
On a project, of any size, standardising things like spacing, colours and font families is vital if any kind of expansion could occur, or multiple people are to work on things.
So in Loom every spacing unit, every colour, every font, every text-style, comes from a variable.
Even better, all collections of units come from Sass maps and lists.
And you’d end up accessing these lists and maps via an understandable function.
get-spacing. get-color. get-font-family.
This means no more `margin-left: 25px` in your code.
It means no more `color: #333` in your code.
It means a more… organised approach to things.
It means that a design system is the main definition of colours and fonts and spacing.
And again, nothing new here. But this is rarely enforced. Loom tries to enforce this stuff.
Inverted Triangle CSS.
If any of you follow the work of Harry Roberts you’ll know about this.
It forces your CSS to source order as the way to define specificity.
What does that mean?
All Sass partials are arranged in layers, with the most broad, the least specific, sitting at the top.
As you go down the triangle, things get more specific and narrower in scope.
It’s a controlled approach to selector specificity.
Great for teams!
At the same time, classes are kept as simple and as flat as possible.
There’s no Sass nesting in Loom.
I know it’s attractive, but it’s ultimately destructive.
The lack of nesting prevents any particular chunk of CSS specificity from rising above the average.
These two things together mean no more of this……..
No more “I’ll just add something to the end of the stylesheet that beats the selector I want to override”.
Source order becomes the primary mechanism of deciding what selector “wins”.
Again, nothing new.
Just some preexisting practises that are used in the framework.
I’d initiated and developed another in-house framework on a previous project, and had found the process to be really useful.
But that one was built with the needs of specific projects in mind, and it didn’t fulfil the needs of the broader community.
I wanted to build something that worked for all potential users, however you write your CSS code.
And also…. because I could.
I wanted to do things better. I’d seen similar frameworks. I knew there was a better way of doing it.
I could just stand here and go over every line of code in Loom, but you could do that yourself on github.
But I think these talks are a really important place for learning process, on HOW we learn and code, not what we code.
And this is really important as I guess that there’s a variety of experience levels here, and it’s really important, as a community, that we learn and grow together.
So, I want to talk about what I learned while building Loom.
Know what you want to achieve.
Know what you want your tool to do.
it’s really easy to get “feature creep” in your own head, as you learn about new things and new tech.
For example, I kept breaking out of my assigned aim of creating a pure CSS generation library.
I kept wanting to javascript helpers. But it really wasn’t helping me achieve my aim. My aim was to create a CSS library generator. Adding other things didn’t help me to get to my endpoint. It just kept pushing me further and further away.
Be opinionated. Weigh up the pros and cons. Take some time.
Evaluate things. Pick a way of doing things and stick to it.
I was really nervous about my naming scheme. Folder layers prefixed with numbers. I KNEW a purist would come along and mock that. But to me it was vital - I’m a bit dyslexic and reading lists is really really hard for me.
This is really important for those of us who are not white cis males. You tend to end up doubting yourself. You gotta stand up and fight that feeling and be proud.
So.……… “Carry yourself with the confidence of a mediocre white man”.
There will always be someone who comes along and tells you to do things in a different way.
Little people. Always trying to undermine others.
You know what, everyone has an opinion. But not all opinions were created equally, you know?
Trust yourself.
AT THE SAME TIME…
Allow yourself flexibility, so that you can achieve the end result. Allow yourself to be wrong! People learn from making mistakes. If you end up going down the wrong path, allow yourself to turn back and try another route.
I really painted myself into a corner with how I was using fonts. Like, I found out they would WORK, but I wouldn’t be able to use them efficiently in a project. I ended up having to remove what I’d done and restructuring half the project to accommodate a new way of fonts.
That wasn’t changing direction for the sake of it. That was changing things so that stuff worked. It was a considered change induced by need, not vanity.
Don’t ignore what others have already done. Even if you don’t agree from it, LEARN.
Bourbon is amazing - learn from it. The mixins in there are so damn powerful, it’s unreal.
InuitCSS is wonderful. It was what inspired me to write any kind of framework in the first place. The use of ITCSS in there is inspirational.
You can draw on the pool of the community knowledge and experience. You’re not alone and you shouldn’t try to do everything alone.
I was screwed for ages trying to come up with a robust media-query system. I eventually realised that I could just use something developed by someone else. Sass MQ is amazing, so why not just use it? It is licensed under MIT, so I could just pick it up and go.
It’s possible to over engineer to death.
Inspired by something I’d seen - and fundamentally misunderstood - in Bourbon I started working on a mixin like this…
It was longwinded and awful
I haven’t got the original to show you as I kinda burned it from my memory.
I could have just written this….
Know when to stop.
Always bring it back to your final aim.
Does your extra code add anything for the user? Or are you doing it for yourself?
Take everything simply, and slowly.
Don’t try and build something that is perfect from the start. Things are going to change.
You need to be flexible, like I said before.
So, make successive passes at your code.
Write what you want to achieve initially. Write it as a comment.
Then play, make it do something.
Then make it work. Make sure it does what you want it to do.
Then make it better.
Not just a coding issue. People in other industries face this. A novel isn’t written grammatically perfect from the start, with everything in there. A plot framework comes first, then chapters, then editing.
Dunno about you, but I’ve always sucked at documentation.
But it’s amazing.
Finding a good documentation system is like finding a good… I dunno… a good dentist.
You’ll stop being afraid and you’ll want to visit again.
Same with documentation. I found Sassdocs to be a wonderful tool for this. Add what your code does as comments, and Sassdocs will find those comments and build a little manual for you based on it.
If you find a system like that, one that is great, you’ll *want* to document everything. It is so so so pleasing to see everything you’ve written documented in a page. And this is really important.
You are not working in a vacuum. You are part of a community, or a team, and your code has to outlive you.
And this community spirit doesn’t just apply to documentation. It applies to your code. Think about the people you work with. Imagine you have never seen this code before. You might have put a fancy shorthand piece of code in there.
And finally….
Come up with a good name!
You would not believe how long it took me and my partner in a bar, drinking beer and trying to come up with a name even this bad. I had a bad hangover by the end of the process, for sure.
It’s genuinely fun to try and come up with one, but it’s also so important for namespacing and package naming.
Thanks for listening.
Just to note as well that I’m looking for a new position right now.
Ask me any questions later on.