These are the slides of my talk about Rails 2.2 i18n (internationalization) which I gave at the Fosdem '09 Ruby and Rails DevRoom on February 8th 2009.
See http://fosdem.org/2009/schedule/events/ror_i18n_rails_2_2 for more details.
This document summarizes the history and features of internationalization (i18n) support in Ruby on Rails. It discusses how i18n was initially implemented through plugins with monkey patching, leading Rails 2.2 to bundle the i18n gem for a common API without patching. The gem provides translation and localization methods, along with backends like SimpleBackend for storage. Rails now supports i18n for validation errors, forms, numbers, dates and more through the i18n helper and configuration. Resources are provided for using i18n in Rails applications.
This document discusses internationalization (i18n) in Ruby on Rails applications. It provides an overview of i18n, including how Rails supports it out of the box, how locale files are loaded and used, and an example of setting the locale based on URL parameters. The document also discusses some benefits of i18n like reaching a wider audience and improving code structure. Additional resources on Rails i18n are provided at the end.
Localizing a CakePHP application involves wrapping translatable text in __() functions, generating PO files containing translations using a console shell, and manually creating PO files for each language. The PO files contain message IDs and localized strings, and get placed in directories corresponding to language codes. Configuring the application's language based on region ensures the proper translations display.
Strategies for Friendly English and Successful Localization (InfoDevWorld 2014)John Collins
More and more companies are striving for a friendly tone with their content. Many of those same companies are taking their content to other cultures with localized content. Those two content goals seem to be at odds.
This slideshow, presented at Information Development World in October of 2014, looks at how to accomplish both goals.
Open Software Platforms for Mobile Digital BroadcastingFrancois Lefebvre
Overview of CRC projects in digital radio software projects. Discussion of potential future projects. Presented in Gatineau to students and professors of Computer Science and Engineering Department of UQO
Putting Out Fires with Content Strategy (InfoDevDC meetup)John Collins
The document discusses the role of content strategy in software development and how it is similar to firefighting. Content strategists are like "pump operators" who ensure the right content gets to the right users. The document outlines the skills and knowledge needed for a content strategy role, including an understanding of software development, information architecture, user experience, and localization. It emphasizes the importance of collaborating with other teams and using data and analytics to continually improve content strategies.
This document discusses how to build intelligent and awesome web applications using machine learning techniques in Python. It covers clustering algorithms like k-means clustering to group similar news articles. It also discusses classification algorithms like Naive Bayes classifiers to analyze sentiment of tweets. Recommendation systems using collaborative filtering are also presented. The document provides code examples in Django to implement clustering of news and sentiment analysis of tweets. It highlights challenges in machine learning and lists additional techniques like SVM, canopy clustering and locality sensitive hashing.
This document provides a checklist of items that are typically included when preparing materials for translation. The checklist includes 10 high-level items such as the source files to be translated, instructions on languages, deliverables, and references. It also lists contact information, deadlines, and payment details that are important for translation projects.
This document summarizes the history and features of internationalization (i18n) support in Ruby on Rails. It discusses how i18n was initially implemented through plugins with monkey patching, leading Rails 2.2 to bundle the i18n gem for a common API without patching. The gem provides translation and localization methods, along with backends like SimpleBackend for storage. Rails now supports i18n for validation errors, forms, numbers, dates and more through the i18n helper and configuration. Resources are provided for using i18n in Rails applications.
This document discusses internationalization (i18n) in Ruby on Rails applications. It provides an overview of i18n, including how Rails supports it out of the box, how locale files are loaded and used, and an example of setting the locale based on URL parameters. The document also discusses some benefits of i18n like reaching a wider audience and improving code structure. Additional resources on Rails i18n are provided at the end.
Localizing a CakePHP application involves wrapping translatable text in __() functions, generating PO files containing translations using a console shell, and manually creating PO files for each language. The PO files contain message IDs and localized strings, and get placed in directories corresponding to language codes. Configuring the application's language based on region ensures the proper translations display.
Strategies for Friendly English and Successful Localization (InfoDevWorld 2014)John Collins
More and more companies are striving for a friendly tone with their content. Many of those same companies are taking their content to other cultures with localized content. Those two content goals seem to be at odds.
This slideshow, presented at Information Development World in October of 2014, looks at how to accomplish both goals.
Open Software Platforms for Mobile Digital BroadcastingFrancois Lefebvre
Overview of CRC projects in digital radio software projects. Discussion of potential future projects. Presented in Gatineau to students and professors of Computer Science and Engineering Department of UQO
Putting Out Fires with Content Strategy (InfoDevDC meetup)John Collins
The document discusses the role of content strategy in software development and how it is similar to firefighting. Content strategists are like "pump operators" who ensure the right content gets to the right users. The document outlines the skills and knowledge needed for a content strategy role, including an understanding of software development, information architecture, user experience, and localization. It emphasizes the importance of collaborating with other teams and using data and analytics to continually improve content strategies.
This document discusses how to build intelligent and awesome web applications using machine learning techniques in Python. It covers clustering algorithms like k-means clustering to group similar news articles. It also discusses classification algorithms like Naive Bayes classifiers to analyze sentiment of tweets. Recommendation systems using collaborative filtering are also presented. The document provides code examples in Django to implement clustering of news and sentiment analysis of tweets. It highlights challenges in machine learning and lists additional techniques like SVM, canopy clustering and locality sensitive hashing.
This document provides a checklist of items that are typically included when preparing materials for translation. The checklist includes 10 high-level items such as the source files to be translated, instructions on languages, deliverables, and references. It also lists contact information, deadlines, and payment details that are important for translation projects.
The document presents a metaphor comparing one's life to a bank account that is credited each day with 86,400 seconds (24 hours) but any unused time is lost at the end of the day. It encourages the reader to make the most of their time each day by investing in their health, happiness, and success as wasted time cannot be reclaimed. It emphasizes appreciating the value of even small amounts of time by considering what those who have missed opportunities would think.
Python can learn from Java's approach to concurrency, garbage collection, and collections. Java offers more optimized and specialized collection types than Python for performance-critical applications. It also provides better tools for profiling, debugging, and managing shared mutable state in a concurrent environment without relying on global interpreter locks. While rewriting core Python functionality in C is challenging, projects like PyPy and RPython show promise in growing Python into a more performant and "growable" language like Java.
The document contains a table with terminology entries for network switch, open, and open in English, German, and French along with their part of speech. It also lists queries from a client regarding using the English term for German and requesting a screenshot of a user interface. The status of the entries is listed as a reply from the client confirming using the English term for German.
Stc 2014 unraveling the mysteries of localization kitsDavid Sommer
This document discusses localization kits for translation projects. It provides an overview of why localization kits are important, what components they typically include such as instructions, reference materials, terminology lists and style guides, and examples of these components. The presentation aims to help people understand how to create and maintain localization kits in order to improve communication with translation providers and the quality of translated content.
Strategies for Friendly English and Successful LocalizationJohn Collins
This slideshow was designed for a 20-minute progression session at the 2014 Society for Technical Communication Summit, presented on Tuesday, May 20, 2014. It's a significantly shortened version of a 45-minute session I'll be giving at Information Development World.
Companies are starting to distinguish themselves with a unique, natural English voice and tone, and many companies also realize there’s a growth potential in localizing their product to reach international markets. That leaves a tension for writers of the English content that will be translated for the international markets. Do the writers focus on tone or on writing easily translated content? Those two goals may seem mutually exclusive, but actually, they’re a healthy combination. We’ll look at what localization is and how to create content that’s good for your English-speaking users and well-suited for translation.
Building Quality Experiences for Users in Any LanguageJohn Collins
Companies are striving for a friendly tone with their content and also taking it to other cultures. Those two content goals seem to be at odds, but they don’t have to be. How do you reconcile more casual writing for content that will be translated into other languages? We’ll look at how to craft quality content for all users, regardless of their language. We’ll cover pitfalls to avoid and tactics to use for creating friendly English that yields pleasing translations.
Linguistic Potluck: Crowdsourcing localization with RailsHeatherRivers
The document discusses the benefits of exercise for mental health. It states that regular exercise can help reduce anxiety and depression and improve mood and cognitive function. Exercise causes chemical changes in the brain that may help alleviate symptoms of mental illness.
2008 Fourth Quarter Real Estate Commentaryalghanim
The global real estate market suffered in 2008 due to the financial crisis and economic downturn. U.S. REITs rebounded in the 4th quarter of 2008 and may lead a recovery in 2009 if the U.S. economy rebounds. Credit markets remain largely frozen, which is impacting commercial mortgage backed securities and new lending. Defensive investment strategies focused on liquidity and balance sheet strength are positioned to perform best in 2009 until economic and market conditions stabilize further. Opportunities may arise in undervalued REITs and direct commercial real estate if accessed with a long/short hedge fund strategy.
A person is unsure what to get their partner for Valentine's Day and lists some expensive gift ideas like a car, diamond, or gadget. They also suggest an inexpensive lingerie option worth £4.8 million.
This two page document provides instructions for submitting translation work via email. It outlines including all relevant project details and files needed for the translation in a single email with clear labeling. Translators should include their billing information and availability for any potential revisions in the email as well.
Here we talk about designing across, and for, multiple touchscreen platforms (Nokia, iPhone, iPad and Windows Phone 7) using Ribot’s recent suite of Tesco apps as a case study.
How do different form factors, operating systems, and interaction paradigms inform the design of real I-want-to-use-it-every-day apps?
How do you take the constraints (and opportunities) of differing mobile devices and design interfaces that, for the user, feel like they belong on the device and as part of their life?
(Download the presentation for full transcript)
The document provides details for a translation project, including instructions for the vendor. The vendor is asked to submit a project cost using the provided template, provide a word count per language, and reply to the original email without changing the subject for any correspondence. The project involves translating an English document to Arabic with the translated files to look as similar as possible to the original. The vendor must include one validation cycle in their cost estimate and compile their translation memories.
Putting Out Fires with Content Strategy (STC Academic SIG)John Collins
The document discusses the role of content strategy in software development and compares it to firefighting. It argues that content strategists are like "pump operators" who ensure the right content gets to the right users. They put content in "hoses", send the proper amount of content, and ensure there is enough content for the future. The document provides definitions of content strategy and advises on skills and knowledge needed to be a successful user experience content strategist.
The document discusses various mobile development platforms, including their openness, supported languages and devices, and companies behind them. It notes problems with current platforms like restrictions, too many platforms, and different development approaches. It also discusses some cross-platform solutions and frameworks like Qt, FreeSmartPhone.org standards, LWUIT, Jalimo and OpenEmbedded that aim to address these issues.
The ruby on rails i18n core api-Neeraj KumarThoughtWorks
Across the world, natural or regional languages differ in many ways, (e.g. in pluralization rules). Therefore, Internationalization became a complex problem and it is hard to provide tools for solving all problems at once. Sven Fuchs focused to provide an extensible framework and easy to use gem that is Ruby I18n (internationalization) gem.
The Ruby I18n gem is mainly designed for translating your application to a single custom language other than English or for providing multi-language support for your ruby on rails application. The pivotal point of the new I18n api in Rails is the I18n module which is provided as a gem and shipped with Rails (starting from Rails 2.2) in ActiveSupport’s vendor directory.
Therefore, during my presentation I will try to go over some of the advanced optional features and architecture of I18n gem. Besides, I will also try to cover begin with I18n gem, setup, benefits, the work flow, what's in? and what's not? Etc.
This information is outdated now. For an up to date look at using Cassandra from Python see this presentation: https://speakerdeck.com/tylerhobbs/intro-to-cassandra-and-the-python-driver
Using Apache Cassandra from Python. Given at PyCon 2012.
Tricks & challenges developing a large Django applicationSimon Willison
The document discusses tricks and challenges for developing large Django applications. It outlines three tricks: 1) Signing data to pass through untrusted sources without tampering; 2) Adding a cache version field to models to invalidate cached queries; 3) Using NoSQL databases like Redis and Solr for denormalizing data to allow flexible queries across entities. Redis sets are used to track relationships like followers and event attendees for recommendations.
The document discusses guidelines for creating an effective localization kit that provides vendors with all the necessary resources to localize a product. An ideal localization kit is complete, containing everything needed beyond the product itself, and usable, with clear documentation. It should include all translatable files and resources, instructions, guidelines, background information, and any tools required to work with the files. Organizing the kit with all localization resources in a central location helps ensure consistency across projects and languages.
These are the slides of Nicolas' talk about Rails 2.2 i18n (internationalization) which he gave at the Fosdem '09 Ruby and Rails DevRoom on February 8th 2009.
See http://fosdem.org/2009/schedule/events/ror_i18n_rails_2_2 for more details.
Ruby i18n allows translation and localization, interpolation of values to translations, pluralization, customizable translation to ASCII, flexible defaults and many more. This is a comprehensive ruby i18n guide which includes code examples as well.
The document presents a metaphor comparing one's life to a bank account that is credited each day with 86,400 seconds (24 hours) but any unused time is lost at the end of the day. It encourages the reader to make the most of their time each day by investing in their health, happiness, and success as wasted time cannot be reclaimed. It emphasizes appreciating the value of even small amounts of time by considering what those who have missed opportunities would think.
Python can learn from Java's approach to concurrency, garbage collection, and collections. Java offers more optimized and specialized collection types than Python for performance-critical applications. It also provides better tools for profiling, debugging, and managing shared mutable state in a concurrent environment without relying on global interpreter locks. While rewriting core Python functionality in C is challenging, projects like PyPy and RPython show promise in growing Python into a more performant and "growable" language like Java.
The document contains a table with terminology entries for network switch, open, and open in English, German, and French along with their part of speech. It also lists queries from a client regarding using the English term for German and requesting a screenshot of a user interface. The status of the entries is listed as a reply from the client confirming using the English term for German.
Stc 2014 unraveling the mysteries of localization kitsDavid Sommer
This document discusses localization kits for translation projects. It provides an overview of why localization kits are important, what components they typically include such as instructions, reference materials, terminology lists and style guides, and examples of these components. The presentation aims to help people understand how to create and maintain localization kits in order to improve communication with translation providers and the quality of translated content.
Strategies for Friendly English and Successful LocalizationJohn Collins
This slideshow was designed for a 20-minute progression session at the 2014 Society for Technical Communication Summit, presented on Tuesday, May 20, 2014. It's a significantly shortened version of a 45-minute session I'll be giving at Information Development World.
Companies are starting to distinguish themselves with a unique, natural English voice and tone, and many companies also realize there’s a growth potential in localizing their product to reach international markets. That leaves a tension for writers of the English content that will be translated for the international markets. Do the writers focus on tone or on writing easily translated content? Those two goals may seem mutually exclusive, but actually, they’re a healthy combination. We’ll look at what localization is and how to create content that’s good for your English-speaking users and well-suited for translation.
Building Quality Experiences for Users in Any LanguageJohn Collins
Companies are striving for a friendly tone with their content and also taking it to other cultures. Those two content goals seem to be at odds, but they don’t have to be. How do you reconcile more casual writing for content that will be translated into other languages? We’ll look at how to craft quality content for all users, regardless of their language. We’ll cover pitfalls to avoid and tactics to use for creating friendly English that yields pleasing translations.
Linguistic Potluck: Crowdsourcing localization with RailsHeatherRivers
The document discusses the benefits of exercise for mental health. It states that regular exercise can help reduce anxiety and depression and improve mood and cognitive function. Exercise causes chemical changes in the brain that may help alleviate symptoms of mental illness.
2008 Fourth Quarter Real Estate Commentaryalghanim
The global real estate market suffered in 2008 due to the financial crisis and economic downturn. U.S. REITs rebounded in the 4th quarter of 2008 and may lead a recovery in 2009 if the U.S. economy rebounds. Credit markets remain largely frozen, which is impacting commercial mortgage backed securities and new lending. Defensive investment strategies focused on liquidity and balance sheet strength are positioned to perform best in 2009 until economic and market conditions stabilize further. Opportunities may arise in undervalued REITs and direct commercial real estate if accessed with a long/short hedge fund strategy.
A person is unsure what to get their partner for Valentine's Day and lists some expensive gift ideas like a car, diamond, or gadget. They also suggest an inexpensive lingerie option worth £4.8 million.
This two page document provides instructions for submitting translation work via email. It outlines including all relevant project details and files needed for the translation in a single email with clear labeling. Translators should include their billing information and availability for any potential revisions in the email as well.
Here we talk about designing across, and for, multiple touchscreen platforms (Nokia, iPhone, iPad and Windows Phone 7) using Ribot’s recent suite of Tesco apps as a case study.
How do different form factors, operating systems, and interaction paradigms inform the design of real I-want-to-use-it-every-day apps?
How do you take the constraints (and opportunities) of differing mobile devices and design interfaces that, for the user, feel like they belong on the device and as part of their life?
(Download the presentation for full transcript)
The document provides details for a translation project, including instructions for the vendor. The vendor is asked to submit a project cost using the provided template, provide a word count per language, and reply to the original email without changing the subject for any correspondence. The project involves translating an English document to Arabic with the translated files to look as similar as possible to the original. The vendor must include one validation cycle in their cost estimate and compile their translation memories.
Putting Out Fires with Content Strategy (STC Academic SIG)John Collins
The document discusses the role of content strategy in software development and compares it to firefighting. It argues that content strategists are like "pump operators" who ensure the right content gets to the right users. They put content in "hoses", send the proper amount of content, and ensure there is enough content for the future. The document provides definitions of content strategy and advises on skills and knowledge needed to be a successful user experience content strategist.
The document discusses various mobile development platforms, including their openness, supported languages and devices, and companies behind them. It notes problems with current platforms like restrictions, too many platforms, and different development approaches. It also discusses some cross-platform solutions and frameworks like Qt, FreeSmartPhone.org standards, LWUIT, Jalimo and OpenEmbedded that aim to address these issues.
The ruby on rails i18n core api-Neeraj KumarThoughtWorks
Across the world, natural or regional languages differ in many ways, (e.g. in pluralization rules). Therefore, Internationalization became a complex problem and it is hard to provide tools for solving all problems at once. Sven Fuchs focused to provide an extensible framework and easy to use gem that is Ruby I18n (internationalization) gem.
The Ruby I18n gem is mainly designed for translating your application to a single custom language other than English or for providing multi-language support for your ruby on rails application. The pivotal point of the new I18n api in Rails is the I18n module which is provided as a gem and shipped with Rails (starting from Rails 2.2) in ActiveSupport’s vendor directory.
Therefore, during my presentation I will try to go over some of the advanced optional features and architecture of I18n gem. Besides, I will also try to cover begin with I18n gem, setup, benefits, the work flow, what's in? and what's not? Etc.
This information is outdated now. For an up to date look at using Cassandra from Python see this presentation: https://speakerdeck.com/tylerhobbs/intro-to-cassandra-and-the-python-driver
Using Apache Cassandra from Python. Given at PyCon 2012.
Tricks & challenges developing a large Django applicationSimon Willison
The document discusses tricks and challenges for developing large Django applications. It outlines three tricks: 1) Signing data to pass through untrusted sources without tampering; 2) Adding a cache version field to models to invalidate cached queries; 3) Using NoSQL databases like Redis and Solr for denormalizing data to allow flexible queries across entities. Redis sets are used to track relationships like followers and event attendees for recommendations.
The document discusses guidelines for creating an effective localization kit that provides vendors with all the necessary resources to localize a product. An ideal localization kit is complete, containing everything needed beyond the product itself, and usable, with clear documentation. It should include all translatable files and resources, instructions, guidelines, background information, and any tools required to work with the files. Organizing the kit with all localization resources in a central location helps ensure consistency across projects and languages.
These are the slides of Nicolas' talk about Rails 2.2 i18n (internationalization) which he gave at the Fosdem '09 Ruby and Rails DevRoom on February 8th 2009.
See http://fosdem.org/2009/schedule/events/ror_i18n_rails_2_2 for more details.
Ruby i18n allows translation and localization, interpolation of values to translations, pluralization, customizable translation to ASCII, flexible defaults and many more. This is a comprehensive ruby i18n guide which includes code examples as well.
The document discusses localization and internationalization in Ruby on Rails applications. It describes how to set up localization using the I18n gem to translate text into different languages. It also discusses the Globalize2 gem, which adds model translations to ActiveRecord to support multilingual content.
This document provides guidance on internationalizing (i18n) applications to support multiple languages. It discusses best practices for translating text, handling pluralization, linking translations to views, and setting the locale based on user preferences. Challenges around legacy translation code and JavaScript integrations are also addressed. The document emphasizes DRY principles, automation, and convention over configuration to make translations scalable. It concludes with recommendations like generating locale files alongside scaffolds and failing builds when translations are missing.
The document discusses the Ruby on Rails I18n internationalization gem. It covers setting up I18n, loading and storing translations, setting the locale from different sources like the URL, domain name, or client information, and translating Active Record and validation error messages.
This document discusses localizing Ruby on Rails applications. It defines internationalization, localization, and globalization. Localization in Rails involves translating views, models, dates/times, currencies, numbers and other elements to different locales. The document reviews various Rails plugins that can help with localization, including Globalize, Localize, Gloc, and Ruby Gettext. It recommends choosing localization tools wisely and considering model translations may require Globalize.
How To Build And Launch A Successful Globalized App From Day One Or All The ...agileware
Significant compromises are often made taking a product to market that cause downstream pain—success can mean endless hours re-architecting and retrofitting to go global, get past 508 compliance at universities or integrate partners. The good news is there are freely available technologies and strategies to avoid the pain. Learn from Zimbra’s experiences with ZCS and Zimbra Desktop (an offline-capable AJAX email application) including a checklist of do’s and don’ts and a deep dive into: i18n and l10n, 508 compliance (Americans with Disabilities Act), skinning, templates, time-date formatting and more.
From http://en.oreilly.com/oscon2008/public/schedule/detail/4834
The document discusses developing multilingual apps and localization. It covers internationalization (i18n) and localization (l10n) basics like handling different languages and encodings. It demonstrates marking translatable strings in code and the process of building locales. Localization is defined as implementing a specific language for an already internationalized software by adapting it to a given culture. Steps for localizing free and open source software like building the environment and merging translations are outlined. The document also briefly mentions opportunities for contributing to localization efforts.
Living in a Multi-lingual World: Internationalization in Web and Desktop Appl...adunne
Internationalizing Web 2.0 applications presents new challenges compared to traditional websites. Web 2.0 apps use multiple technologies like JavaScript, Flash, and desktop apps in addition to traditional websites. This multiplies the internationalization problem. The document recommends consolidating i18n by keeping all data in one place and automatically extracting strings from different app parts. It also discusses challenges like translating user-generated content and graphical text, and provides examples of how one company internationalized an app using a common i18n database format.
Living in a multiligual world: Internationalization for Web 2.0 ApplicationsLars Trieloff
The document discusses internationalization challenges for Web 2.0 applications and proposes solutions. It notes that Web 2.0 applications use various technologies like JavaScript, Flash, and desktop applications that each have their own internationalization frameworks. It recommends consolidating internationalization by keeping all translation data in a common format and database, and allowing applications to access translations from this single source. The document also addresses challenges of translating user-generated content and graphical text, and suggests structuring content and generating graphics dynamically on the server to improve translatability.
MISC TOPICS #2: I18n Data Programming Pearls Random Records Rpx Now Susher St...grosser
This document discusses several projects and tools by Michael Grosser, including:
1) I18nData, a library providing internationalization data for languages and countries
2) Smusher, a tool for optimizing image file sizes
3) store_with_default_protocol, an ActiveRecord extension for setting protocol defaults
4) RPXNow, a single sign-on solution
5) Programming Rubies, rewriting Programming Pearls algorithms in Ruby
This document provides an overview of internationalization (i18n) in Zope and Plone, including a history of i18n support, common i18n packages, how to translate add-ons, templates, code, and profiles. It also covers LinguaPlone features for multilingual support, such as language controls and translation forms, and how it integrates with Archetypes content types to enable translations.
The document discusses various issues that can arise in translation memory (TM) data and how they are typically handled by normalization processes or technology providers like PROMT. Some examples of issues addressed include excessive internal tags, irrelevant data, mismatches between source and target languages, inconsistent formatting, and machine code or keywords that are not fully translated. The document also provides examples of how PROMT specifically handles some of these issues, such as keeping internal tags but not to an excessive level, and leaving irrelevant data untouched while letting it be handled by other downstream processes.
The document discusses internationalization (i18n) and localization (l10n) features in the symfony framework. It covers setting the user's culture, outputting localized data, storing localized text in the database, and translating the user interface. Key aspects include determining the culture, using i18n helpers to format output for the user's culture, creating localized database schemas, and translating templates using dictionary files.
The document provides information about internationalization (i18N) and localization (L10N). It discusses topics like what i18N and L10N are, why they are important, character encodings, locales, Unicode, and how to implement i18N in technologies like ColdFusion and Java. It also provides examples of using i18N functions and resource bundles for localization in ColdFusion applications.
The document discusses translating .NET bytecode to run on the Parrot virtual machine (VM). It describes:
1) Choosing bytecode translation over other options like modifying compilers or embedding VMs, as it provides better performance and independence from programming languages.
2) The challenges of translating between the stack-based .NET bytecode and register-based Parrot bytecode.
3) The architecture developed to make the translation pluggable and declarative, including a metadata translator, instruction translator, and stack to register mapping modules.
This is an overview session that touches onto all kinds of new developments in the wide field of web design. This talk is mainly focussed on client side technologies (HTML, CSS, JavaScript) and outlines the news of the past months. If you have not been following the buzz lately, this is a good session to get you up to speed.
All the language support in Drupal 8 - At Drupalaton 2014Gábor Hojtsy
The document discusses the improvements to language and translation support in Drupal 8. Key changes include simplifying the language configuration, making content translation more flexible through fields, adding block and configuration translation, and integrating automated translation downloads. It also notes areas for further improvement through contributed modules.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
3. What we are talking about
Internationalization (i18n): “designing a software
application so that it can be adapted to various
languages and regions without engineering changes”
Localization (L10n): “the process of adapting
software for a specific region or language by adding
locale-specific components and translating text”
4. What it means
This emcompasses
Language
Culture
Writing conventions
Why does it matter?
Not everybody speaks english, even on the web
In Europe: dozens of cultures and languages
5. Rails i18n before 2.2
English was hardcoded in the codebase
Rails was a framework localized to English (en-US)
6. Rails i18n before 2.2
i18n plugins had to monkey-patch Rails everywhere
Remove english defaults
Enhance business logic so that it handles translation
7. The Rails i18n framework
Started in Sep ’07 by several i18n plugin developers
Aim:
eliminate the need to monkey-patch Rails for i18n
implement a minimal, common API for all solutions
8. The Rails i18n framework
A gem by Sven Fuchs and other contributors
http://github.com/svenfuchs/i18n
Shipped with Rails since 2.2 (ActiveSupport vendor dir)
2 parts:
An API
A minimal “Simple” backend implementing the API
9. The Rails i18n framework
The API is now used by Rails instead of hardcoded
strings
The Simple Backend implements the API to re-localize
Rails back to en-US
Rails is still a framework localized to English, but it’s
now globalized too
Doesn’t remove the need for plugins!
10. The Rails i18n framework
Advantages?
The backend can easily be swapped
No monkey-patching anymore!
11. The i18n module in details
Defines #translate / #t and #localize / #l
Stores the current locale in Thread.current
Store a default locale
Stores a backend
Stores an exception handler
12. So how do I translate?
Put your translations in config/locales (YAML or Ruby),
or use I18n.backend.store_translations in the console:
I18n.backend.store_translations :en, :hi => “Hi!”
I18n.backend.store_translations :fr, :hi => “Salut!”
Set the current locale:
I18n.locale = :fr
Keys can be strings or symbols:
I18n.t :message
I18n.t 'message'
17. Localizing dates and times
I18n.l Time.now, :locale => :en
quot;Sun, 08 Feb 2009 15:42:42 +0100quot;
I18n.l Time.now, :locale => :fr
=> quot;08 février 2009 15:42quot;
I18n.l Date.today, :locale => :fr, :format => :short
=> quot;8 févquot;
You have to provide the localizations!
18. Short demo
Basic “hello world” app:
Configure the i18n module
Set the locale in each request
Internationalize the application
19. Shortcomings
The simple backend is... simple
Pluralization is basic (singular and plural)
Storage only in YAML or Ruby files
No model translations
21. Model translations
#translates specifies
which fields you want to be
translatable
The accessor will return the
localized version
transparently
22. Model translations
The translations are stored
in a separate table for each
model
Shortcut:
Post.create_translation_table!
:title => :string,
:text => :text
24. Locale fallbacks
Allows you to set fallbacks when a translation is not
available in a particular locale
I18n.fallbacks[:quot;es-MXquot;]
# => [:quot;es-MXquot;, :es, :quot;en-USquot;, :en]
You can edit fallback chains
I18n.fallbacks.map :ca => :quot;es-ESquot;
I18n.fallbacks[:ca]
# => [:ca, :quot;es-ESquot;, :es, :quot;en-USquot;, :en]
25. Custom pluralization logic
For languages not behaving like English
Globalize2’s pluralization logic is not hardcoded
New rules can by added with lambdas
@backend.add_pluralizer :cz, lambda { |c|
c == 1 ? :one : (2..4).include?(c) ? :few : :other
}
26. Missing translations log
handler
Will log all missing translations in a file
require 'globalize/i18n/missing_translations_log_handler’
logger = Logger.new(quot;#{RAILS_ROOT}/log/missing_trans.logquot;)
I18n.missing_translations_logger = logger
I18n.exception_handler = :missing_translations_log_handler
Pretty useful to quickly find what’s missing
28. The Translate plugin
Adds a translation UI to
your app in seconds
Allows you or your
translators to easily
translate all your strings
Available on Github:
http://github.com/
newsdesk/translate/