Forwarded from ngxSamurai
Find the right way: Geodata with Python and the Art of E2E-Testing
Details
18:30 Open Doors:
Enjoy complimentary Food and Drinks sponsored by adesso SE
19:15 Welcoming from Shevelopers and adesso SE
19:30 Cypress - The Art of simple E2E Testing
End-to-End (E2E) testing is a crucial aspect of software development. Setting up effective and reliable E2E-tests, however, can be time-consuming and frustrating. Cypress takes the approach of focusing on developer experience. It aims to make writing test simpler and more stable. The goal is to write more meaningful tests and to make it an enjoyable process.
In this presentation, we provide a short overview of the main types of software testing, we examin best practices and the pros and cons of the framework. Join us as we delve into the world of Cypress and explore how it can enhance your testing experience.
Speaker: Hannah Ebert (Senior Software Engineer) und Milena Fluck (Senior Software Engineer)
20:05 Navigating Data Horizons - A Python Expedition into Geospatial Analysis
Geospatial analysis refers to techniques and processes used to interpret and derive insights from spatial data. Using Python libraries such as geopandas, folium, and OSMnx, we will explore location-based data and spatial relationships from freely available spatial data. You will learn how to query OpenStreetMap data, visualize administrative boundaries, and explore street networks.
Speaker: As a software engineer at adesso SE, Sabine Heiland specializes on data science and data analysis. Her main focus lies on gaining insights from geospatial data in GIS systems, as well as extracting information from unstructured textual data
20:45 Selfy-Time and Networking
22:00 END
#shevelopers #adesso #cypress #e2e #python
Details
18:30 Open Doors:
Enjoy complimentary Food and Drinks sponsored by adesso SE
19:15 Welcoming from Shevelopers and adesso SE
19:30 Cypress - The Art of simple E2E Testing
End-to-End (E2E) testing is a crucial aspect of software development. Setting up effective and reliable E2E-tests, however, can be time-consuming and frustrating. Cypress takes the approach of focusing on developer experience. It aims to make writing test simpler and more stable. The goal is to write more meaningful tests and to make it an enjoyable process.
In this presentation, we provide a short overview of the main types of software testing, we examin best practices and the pros and cons of the framework. Join us as we delve into the world of Cypress and explore how it can enhance your testing experience.
Speaker: Hannah Ebert (Senior Software Engineer) und Milena Fluck (Senior Software Engineer)
20:05 Navigating Data Horizons - A Python Expedition into Geospatial Analysis
Geospatial analysis refers to techniques and processes used to interpret and derive insights from spatial data. Using Python libraries such as geopandas, folium, and OSMnx, we will explore location-based data and spatial relationships from freely available spatial data. You will learn how to query OpenStreetMap data, visualize administrative boundaries, and explore street networks.
Speaker: As a software engineer at adesso SE, Sabine Heiland specializes on data science and data analysis. Her main focus lies on gaining insights from geospatial data in GIS systems, as well as extracting information from unstructured textual data
20:45 Selfy-Time and Networking
22:00 END
#shevelopers #adesso #cypress #e2e #python
Please open Telegram to view this post
VIEW IN TELEGRAM
✨ Attribute Injection - Angular 17.3.0-next.1
Release 17.3.0-next.1 führt eine neue HostAttributeToken-Klasse ein, mit der ihr Attribute ähnlich wie @Attribute implementieren könnt.
Es kann wie folgt verwendet werden:
Die neue API verhält sich ähnlich wie der @Attribute-Dekorator, mit einem großen Unterschied: Sie löst einen DI-Fehler aus, wenn das Attribut nicht vorhanden ist, anstatt null zurückzugeben.
https://netbasal.com/streamlining-attribute-injection-in-angular-the-hostattributetoken-approach-494f5c1428b8
Release 17.3.0-next.1 führt eine neue HostAttributeToken-Klasse ein, mit der ihr Attribute ähnlich wie @Attribute implementieren könnt.
Es kann wie folgt verwendet werden:
import {HostAttributeToken, inject} from '@angular/core';
class MyDir {
someAttr = inject(new HostAttributeToken('some-attr'));
}Die neue API verhält sich ähnlich wie der @Attribute-Dekorator, mit einem großen Unterschied: Sie löst einen DI-Fehler aus, wenn das Attribut nicht vorhanden ist, anstatt null zurückzugeben.
https://netbasal.com/streamlining-attribute-injection-in-angular-the-hostattributetoken-approach-494f5c1428b8
GitHub
Release v17.3.0-next.1 · angular/angular
17.3.0-next.1 (2024-02-27)
common
Commit
Denoscription
AsyncPipe should not call markForCheck on subnoscription (#54554)
compiler
Commit
Denoscription
Enable template pipeline by defau...
common
Commit
Denoscription
AsyncPipe should not call markForCheck on subnoscription (#54554)
compiler
Commit
Denoscription
Enable template pipeline by defau...
In Angular 17.2 🔥, one of the interesting feature is Automatic placeholders with NgOptimizedImage.
If you’re using the NgOptimizedImage directive for your images, you can now quickly add a blurry placeholder while an image loads. Just add the placeholder attribute to your image, and the image directive will automatically request a small version of the image, blur it, and display that until the full image is ready.
UX will be enhanced with this feature.
#angular17 #angular #angulardeveloper #javanoscript
If you’re using the NgOptimizedImage directive for your images, you can now quickly add a blurry placeholder while an image loads. Just add the placeholder attribute to your image, and the image directive will automatically request a small version of the image, blur it, and display that until the full image is ready.
UX will be enhanced with this feature.
#angular17 #angular #angulardeveloper #javanoscript
Exploring TypeScript: Mapped Types 🗺
Mapped Types in TypeScript allow you to transform and manipulate existing types and create new types dynamically. They enable you to iterate over the properties of a type and generate new types based on those properties.
Why are They Cool?
Mapped Types provide an elegant solution for scenarios where you need to transform or extend existing types in a systematic and type-safe manner. They offer advanced techniques for type manipulation and abstraction, elevating TypeScript to a whole new level.
Real-world Application
Imagine you're building a complex application with various data structures, each requiring specific transformations or enhancements. Mapped Types come to the rescue, enabling you to define precise mappings and generate tailored types effortlessly.
Key Benefits
1️⃣ Dynamic Type Generation: Mapped Types enable dynamic generation of new types based on existing types, providing flexibility and expressiveness.
2️⃣ Type Safety: They ensure type safety by preserving the structure and constraints of the original types during transformation, preventing unintended errors.
3️⃣ Code Maintainability: Mapped Types promote code maintainability by abstracting complex type transformations into reusable constructs, enhancing code readability and scalability.
Mapped Types in TypeScript allow you to transform and manipulate existing types and create new types dynamically. They enable you to iterate over the properties of a type and generate new types based on those properties.
Why are They Cool?
Mapped Types provide an elegant solution for scenarios where you need to transform or extend existing types in a systematic and type-safe manner. They offer advanced techniques for type manipulation and abstraction, elevating TypeScript to a whole new level.
Real-world Application
Imagine you're building a complex application with various data structures, each requiring specific transformations or enhancements. Mapped Types come to the rescue, enabling you to define precise mappings and generate tailored types effortlessly.
Key Benefits
1️⃣ Dynamic Type Generation: Mapped Types enable dynamic generation of new types based on existing types, providing flexibility and expressiveness.
2️⃣ Type Safety: They ensure type safety by preserving the structure and constraints of the original types during transformation, preventing unintended errors.
3️⃣ Code Maintainability: Mapped Types promote code maintainability by abstracting complex type transformations into reusable constructs, enhancing code readability and scalability.
🚀 Exploring Angular's Power: ControlValueAccessor
ControlValueAccessor is an Angular interface that acts as a bridge between Angular forms and native DOM elements. Essentially, it empowers developers to create custom form controls, seamlessly integrating them into Angular's reactive forms infrastructure 📜
Imagine you have a complex form with unique input requirements beyond standard HTML form elements. ControlValueAccessor allows you to create form elements while maintaining compatibility with Angular forms. When using the ControlValueAccessor interface for your custom form element, Angular reactive forms can access the values of your form and include it in the form state, error handling, styling, and so on ✅
In order to work with the ControlValueAccessor , you provide an NG_VALUE_ACCESSOR provider and implement the interface of ControlValueAccessor
#angular #corebase
ControlValueAccessor is an Angular interface that acts as a bridge between Angular forms and native DOM elements. Essentially, it empowers developers to create custom form controls, seamlessly integrating them into Angular's reactive forms infrastructure 📜
Imagine you have a complex form with unique input requirements beyond standard HTML form elements. ControlValueAccessor allows you to create form elements while maintaining compatibility with Angular forms. When using the ControlValueAccessor interface for your custom form element, Angular reactive forms can access the values of your form and include it in the form state, error handling, styling, and so on ✅
In order to work with the ControlValueAccessor , you provide an NG_VALUE_ACCESSOR provider and implement the interface of ControlValueAccessor
#angular #corebase
Angular Munich pinned «https://angular.love/en/2024/02/21/angular-micro-frontends-a-modern-approach-to-complex-app-development/»