Meet the hosts: Interview with Jakub Jareš - Jakub Jareš, Thorsten Butz - PSConfEU 2023
## Curated subtitles This video offers hand-crafted subtitles in ...
## Curated subtitles
This video offers hand-crafted subtitles in English
In this episode, we are at the PowerShell Conference 2023 in Prague, and we have a special guest with us, ...Jakub Jareš. Jakub is a local citizen and one of the organizers of this event.
Jakub has been living in Prague for a long time and has a deep love for the city. He feels privileged to have people visit the Czech Republic and experience its unique culture. Growing the IT community, especially the PowerShell community, in the Czech Republic has been a challenge.
Meet the hosts: Interview with Gael Colas - Gael Colas, Thorsten Butz - PSConfEU 2023
In this episode of our podcast/show, I have a conversation with Gail, ...
In this episode of our podcast/show, I have a conversation with Gail, the second-year organizer of the PowerShare Conference. Gail shares her experience organizing the conference in Vienna last year ...and the lessons she learned. She also explains the challenges of organizing the event in a foreign country, which led to the decision to change the location from Hannover to Vienna and now to Prague.
Gail mentions that organizing the conference in her home country was not practical and that changing the location gives the opportunity for local people to contribute and help with the event. She highlights the support they received from Jakub, a local resident who provided information about Prague and its attractions. Gail reflects on the success of the Vienna conference and the desire of attendees to see something new each year.
We discuss what to expect from this year's conference in Prague. Gail mentions that while the format remains the same, there are new speakers, venues, catering, and events. She acknowledges that selecting the content for the conference is challenging and relies on a team of organizers to ensure diverse and interesting sessions.
The conversation touches on the feedback received from delegates and how it is interpreted. Gail gives an example of the challenges of selecting the catering and the varying opinions on the quality of the food. She acknowledges the feedback about the desire for more hands-on workshops and reveals that they are piloting a new content format called follow-alongs, where attendees can actively participate and learn alongside the speaker.
Gail shares her personal preferences for session topics, including desired state configuration (DSC) and new technologies. She encourages attendees to explore various expertise areas and interact with the speakers. She mentions specific sessions, such as a deep dive on managing dependencies in PowerShell, and highlights the recordings of sessions for attendees to review later.
We discuss the balance between planning in advance and staying up to date with the rapidly changing landscape of technology. Gail mentions the advancements in PowerShell, particularly in PowerShell 6, 7, and PowerShell Core. She recommends checking out the PowerShell team's blog post for insights into their direction and investment plans.
In conclusion, I thank Gail for her insights and invite listeners to follow the conference on LinkedIn for updates and information. I provide details about the conference schedule, call for papers, submission deadlines, and decision timelines. I mention the upcoming Minicorn event and express excitement about the opportunity to meet people and create meaningful experiences. Finally, I thank Gail once again and wish everyone a great time at the conference.
00:00:00 Meet the hosts: Interview with Gael Colas - Gael Colas, Thorsten Butz - PSConfEU 2023
00:00:08 Introduction and Experience with the First Conference
00:01:23 Challenges of Organizing in a Foreign Country
00:02:15 Changing Countries and Local Help
00:03:54 New Venue and Format for the Conference
00:07:32 Collecting Feedback and Introducing Hands-on Follow-alongs
00:14:08 AI's Impact on Regular Expressions and Enigma Sessions
00:15:02 The Evolution of PowerShell and its Future Direction
00:16:43 Important Updates and Deadlines for the Conference Attendees[+] Show More
May the debugger be with you - Manfred Wallner - PSConfEU 2023
We are diving into the world of debugging in Visual Studio Code (VS ...
We are diving into the world of debugging in Visual Studio Code (VS Code). We begin by discussing the importance of debugging and how it is not just about troubleshooting ...existing programs, but also about investigating and ensuring code works as intended during the development process. We then introduce the debugging tools in VS Code and explain that debuggers can be CLI-based or integrated into the IDE.
To demonstrate the debugging process, we use an example of a zero-player adventure game with some misbehaving code. We take a quick look at the code, discussing its three parts and explaining how it handles the available characters, checks if players are allowed to play, and prints out the active players.
Next, we dive into the practical part and demonstrate how to use the F5 key or the debugging symbol in the sidebar to launch the current file and start debugging. We explain the different options in the tools palette, such as stepping over, stepping into, stepping out, continuing the program, restarting, and stopping. We also highlight the debugging view in VS Code, which includes the breakpoint section, variable section, and watch window. We explain how to use the watch window to evaluate expressions and gather more information.
As we step through the code, we encounter various issues and bugs. We discuss how to fix these bugs, refactoring the code and paying attention to variables' states. We also highlight the importance of resetting the PowerShell session when debugging multiple scripts and mention an experimental feature in VS Code that allows for the creation of a new PowerShell session when starting the debugger. We emphasize the need to restart the PowerShell session in the integrated terminal and the importance of considering variables and session states from previous debugging sessions.
In the final part of the episode, we focus on the different views available in VS Code for debugging purposes. We discuss the variable view, watch window, call stack view, and breakpoint view, explaining their functionalities and how they can aid in the debugging process. We also discuss different ways to launch the debugger depending on specific needs, such as running a current script, attaching to a running process on a remote machine, or using the interactive session. We mention keyboard shortcuts for navigation and introduce a game called Maze Loot to further illustrate the debugging process.
In total, we cover topics such as debugging tools in VS Code, practical demonstrations, bug fixing, resetting PowerShell sessions, views for debugging, launching the debugger, and debugging multi-run level code. We also address common questions from the audience about debugging scripts on machines without VS Code and setting conditional breakpoints.
00:00:00 may the debugger be with you - Manfred Wallner - PSConfEU 2023
00:00:07 Introduction to partial debugging in VS Code
00:03:41 Different types of debugging tools and approaches explained
00:08:15 Setting breakpoints and stepping through the code for inspection
00:10:25 Utilizing the debugging view and variable inspection in VS Code
00:13:12 Stepping into the For Each Object Block and Debugging
00:21:13 Debugging in VS Code: Partial Session State
00:23:26 Launching the Debugger: Default Configuration and Interactive Session
00:25:24 Introduction to Maze Loot game module
00:26:17 Importing the Maze Loot module
00:26:47 Introduction to Maze Loot Game and available items
00:35:17 Exploring the Game Engine and Player Run Spaces
00:38:09 Changing Execution Order when Debugging Multi-Run Level Code
00:40:23 Attaching to the first run space for debugging.
00:41:32 Exploring Runspaces and Player's Threads
00:43:35 Using Call Stack View for Execution Threads
00:46:05 Debugging PowerShell scripts in PowerShell ISE
00:47:20 Conditional Breakpoints: Stopping Inside a Program on a Condition[+] Show More
Parameterbinding 400+ - Friedrich Weinmann - PSConfEU 2023
We dive into the conversion logic and trace inspection of a function ...
We dive into the conversion logic and trace inspection of a function in PowerShell. We explore how the trace can be used to identify custom transformation rules in PowerShell argument ...transformation. A common issue that arises is the inability to convert an object thread of type thread to another thread, particularly when using PowerShell classes. While PowerShell classes are convenient for creating objects without needing to learn C sharp, defining a new class can sometimes cause issues with object types. This occurs because PowerShell generates in-memory assemblies and assigns dynamically calculated names to classes. As a result, when reimporting a module, the object may no longer be the same type, even if the properties are identical. To address this issue, the PS framework provides an argument transformation attribute that can handle the conversion. We wrap up the session by inviting questions from the audience and expressing gratitude for their participation.
00:00:00 Parameterbinding 400+ - Friedrich Weinmann - PSConfEU 2023
00:00:07 Introduction and Acknowledgements
00:02:04 Transition to Code Analysis
00:03:16 Understanding parameter precedence and types in PowerShell
00:05:09 Exploring parameter binding with example commands
00:14:13 Troubleshooting: When Things Don't Work as Expected
00:15:09 Introduction: Navigating Through Screen Dump Challenges
00:17:09 Investigating Positional Parameters and their Values
00:17:30 Understanding Parameter Binding in PowerShell
00:19:28 Splatting: A Powerful PowerShell Technique
00:23:08 Pipeline Binding: Supporting input without providing it
00:25:23 Introduction to Steppable Pipelines
00:25:44 Problem with slow export CSV command
00:28:37 Improved file processing with steppable pipelines
00:31:27 Binding multiple values from pipeline and its performance impact
00:35:33 PowerShell Parameter Binding and Disk Part
00:40:07 Custom Transformation in PowerShell
00:42:04 Common Issue: Cannot Convert Object to Type[+] Show More
Every Repository Needs a DevContainer - April Edwards - PSConfEU 2023
April Edwards, a senior developer advocate at GitHub, takes the role ...
April Edwards, a senior developer advocate at GitHub, takes the role of the main speaker. April introduces herself as a DevOps practice lead and mentions her recent move to GitHub ...from Microsoft. She also introduces her best friend, Titan, a Great Dane, who helps her write code.
April starts off by expressing gratitude to the sponsors of the podcast, including Chocolaty, Centino, ScriptRunner, and PatchMyPC. She then highlights the evolution of GitHub from being just a source control to becoming a comprehensive platform. April engages the audience by asking how many of them have never used GitHub and dives into the concept of shifting left in development and the significance of the developer experience.
The conversation shifts towards discussing the challenges of working with different devices and configurations while using source control. April shares her personal experience of using Windows devices in a predominantly Mac user team at both Microsoft and GitHub. She emphasizes the benefits of source control and how GitHub has expanded into an end-to-end platform.
April explains the concept of treating resources as code and urges developers to embrace open source practices, moving away from hoarding code and instead focusing on collaboration and sharing. She introduces the audience to Git projects and inquires about their usage of GitHub and dev containers in their projects.
The main speaker then delves into the importance of code in projects and emphasizes the use of gitignore files to exclude specific files from syncing. She advocates for working off of branches instead of the main branch to avoid any disruption in the production process. April discusses the significance of making commits and collaborating through pull requests. She introduces GitHub projects as a means of enhancing documentation and breaking down silos within organizations. Additionally, she mentions Codespaces and DevContainers as useful tools for developers to work in a containerized environment, enabling redundancy and recovery.
Moving forward, the speaker explains the history of physical machines, virtualization, and the cloud, highlighting how containerization optimizes application running efficiency. She emphasizes the portability of containerized applications and the advantage of abstracting the machine. April specifically focuses on DevContainers in Visual Studio Code, which offer developers a containerized environment for running source code.
The conversation then shifts to setting up a code space and the necessary files required to build a containerized environment. The speaker explains the devcontainer.json file, which acts as the configuration file, and the Dockerfile, which contains instructions for building the container.
April proceeds to discuss GitHub Codespaces, which were previously known as Visual Studio Codespaces. She explains that these code spaces are hosted in Azure and provide a pre-built containerized environment, eliminating the risk of contractors taking code with them. Code spaces enhance collaboration among team members using different devices by creating a dev container within the repository.
The speaker emphasizes the time-saving aspect of using code spaces, as developers can work in a pre-configured environment without the need to build a container from scratch. She mentions the integration of AI in code spaces for tasks like documentation and highlights the secure nature of code spaces, especially when working on personal or sensitive devices.
April emphasizes that code spaces empower developers to be more productive and demonstrates the setup and configuration process. She mentions the availability of templates, including one for Jupyter Notebooks. The speaker discusses the synchronization of necessary extensions and tools between VS Code and the code space, as well as the sample notebooks and files available in the Jupyter workspace.
The main speaker elaborates on the DevContainer.json…[+] Show More
What’s new with PowerShell Repositories - Sydney Smith - PSConfEU 2023
Sydney, one of the PMs on the PowerShell team, discusses the ...
Sydney, one of the PMs on the PowerShell team, discusses the PowerShell Get V3 project. This project has been in the works for the past three or four years and ...is a new set of cmdlets that revolutionizes module installation. Sydney begins by thanking the audience for their support and feedback throughout the project.
Sydney then goes on to define some key terms. PowerShell Get has different versions, V1 and V2, with V1 being the current version that ships with Windows and V2 being the latest stable version available with PowerShell 7. PowerShell Get V3, also known as PSResourceGet, is the focus of this discussion. It serves as a compatibility layer and allows users to use the familiar syntax of V2 while still utilizing the advanced features of PSResourceGet.
Throughout the episode, Sydney provides updates on the progress of the PowerShell Git project. They mention that in the past year, they have been working on rebuilding the APIs to improve performance, add telemetry calls, and have cleaner code. They faced challenges in building separate APIs for different repository types and had to make tough decisions regarding feature support. Testing was another significant aspect, and they are actively working with partner teams to ensure proper support. Despite the challenges, Sydney emphasizes the team's commitment to delivering the best PowerShell Git experience possible.
Sydney also covers various repository types supported by PowerShell Git, such as NuGet feeds, ADO public and private feeds, Artifactory, GitHub packages, MyGet, and local file-based feeds. They mention a credential persistence feature that integrates with Secret Management and demonstrate how to register and use different repositories, including local, NuGet gallery, and Azure Artifacts feeds.
The episode also touches on creating private feeds using Azure DevOps and setting up a secret store for storing credentials. Sydney provides step-by-step instructions and highlights some nuances for specific repository types like GitHub packages. They apologize for running out of time and not being able to demonstrate Artifactory, but mention that the process is similar to other repositories.
In conclusion, Sydney thanks the audience for attending the session and offers to answer any questions they may have. They also provide additional resources for documentation, examples, and feedback.
00:00:00 What’s new with PowerShell Repositories - Sydney Smith - PSConfEU 2023
00:00:07 Introduction to the PowerShell Get V3 project
00:03:05 Explanation of key terms: PowerShell Get V1, V2, and V3
00:07:35 Discussion about previous use of betas
00:07:47 Changes in beta version affecting repository registration
00:18:20 Motivation for building different API feeds
00:20:13 Difficulty in handling response format variations and dependencies
00:22:41 Officially Supported v3 Feeds
00:23:33 Introduction to Probit Modeling
00:23:45 Introduction to Credential Persistence Feature
00:25:15 Focus on Security and Reliability of PowerShell Gallery
00:27:38 Team-Wide Bug Bash and Plans for Public Bug Bash
00:29:03 Setting Up and Registering Different Repositories
00:30:27 Switching to List View in History Predictor
00:32:25 Introduction to NuGet gallery and timely blog post
00:34:29 Warning message on package dependencies and future improvements
00:37:43 GitHub packages setup and finding packages
00:44:14 Additional resources and conclusion[+] Show More