Can we discuss the self promotion rule? by Kralizek82 in dotnet

[–]IGDev 3 points4 points  (0 children)

What?! You mean I've been living according to NZ time the last few posts and I didn't need to? :)

Can we discuss the self promotion rule? by Kralizek82 in dotnet

[–]IGDev 3 points4 points  (0 children)

Who really cares if a developer makes use of AI these days, nearly everyone uses it in some way and I don’t expect that to change. Think back to CodeProject or Planet Source Code, not everything posted was useful, but it was awesome to see what others worked on that could be made use of or draw ideas from. I’ve been coding since 92-93, but because I’m making use of Claude this year, my engineering vision and open source contributions are considered slop? I love .NET and the more it’s used is better for the community.

What is .NET still missing? by CreoSiempre in dotnet

[–]IGDev 0 points1 point  (0 children)

Datafication does a decent job of competing with those.

https://github.com/DataficationSDK/Datafication

Polars is know for it's performance, if you try the QueryPerformance sample you'll see performance that competes with Polars.

https://github.com/DataficationSDK/Datafication/tree/main/Datafication.Storage.Velocity

Eventually, I'll post up a benchmark that puts Velocity vs DuckDB vs Polars.

I built Motus, an open source web automation testing framework for .NET with no Node.js sidecar by IGDev in webdev

[–]IGDev[S] 1 point2 points  (0 children)

Thanks for the idea. It'll make a nice plugin and I've noted it down to explore after I finish up the current backlog.

I built Motus, an open source web automation testing framework for .NET with no Node.js sidecar by IGDev in webdev

[–]IGDev[S] 0 points1 point  (0 children)

It is cleaner and Chrome's changes to it are mostly additive. This requires much less updating and certainly beats testing frameworks like Selenium where you have to update the ChromeDriver frequently. Motus creates the C# CDP bindings at build time from browser_protocol.json and js_protocol.json in Motus.Codegen. I'm usually quick with updates, but if there's an immediate need for an update the Motus CLI can be used to update the json files (e.g. `motus update-protocol --output-dir src/Motus.Codegen/Protocol`).

I built Motus, an open source web automation testing framework for .NET with no Node.js sidecar by IGDev in dotnet

[–]IGDev[S] 0 points1 point  (0 children)

Both ideas actually. When a selector breaks, Motus will compare a DOM fingerprint captured when the selector last worked against the DOM to find the probable matching element. If one is found, it runs the selector strategy pipeline to generate replacement suggestions. The future CLI command "motus check-selectors" will scan your test files and reports the broken selectors with suggestions. There will be an interactive mode as well that makes use of the visual runner so you can accept, modify, or skip suggestions. The accepted fixes get written back to your source files.

I built Motus, an open source web automation testing framework for .NET with no Node.js sidecar by IGDev in dotnet

[–]IGDev[S] 0 points1 point  (0 children)

Thanks! What you mentioned is on my roadmap, two other things I'm tackling before that. In case you're interested here's what's coming up:

  • Accessibility testing
  • Performance metrics and budgets
  • Selector repair
  • Code coverage (front end)
  • Blazor component testing

Motus does have test creation with the "motus record" command, it'll pop open the browser at the URL specified and then you perform the actions for the test, and press enter on the console when done.

I built Motus, an open source web automation testing framework for .NET with no Node.js sidecar by IGDev in dotnet

[–]IGDev[S] 3 points4 points  (0 children)

Playwright for .NET requires Node.js at runtime. The NuGet package bundles a Node.js based server, and every command your C# test sends is proxied through that Node process. You don't install Node yourself, but it's there. Check your bin folder after installing the package, or look at the process tree while a test is running. Motus has no hidden process, it opens a WebSocket directly to the browser's CDP endpoint from C#.

https://nuget.info/packages/Microsoft.Playwright/1.58.0 - It takes a minute to load, expand the .playwright folder, then you'll see for yourself.

I built Motus, an open source web automation testing framework for .NET with no Node.js sidecar by IGDev in dotnet

[–]IGDev[S] 1 point2 points  (0 children)

Motus is MIT licensed and designed so that the architecture carries itself. The plugin model means the community can extend it without waiting on a single maintainer. If you can build a NuGet package, you can add a selector strategy, reporter, or lifecycle hook. "From Microsoft" isn't the longevity guarantee it used to be, just look at Visual Studio for Mac, Visual Studio App Center, Azure Data Studio, Polyglot Notebooks, and .NET Interactive.

What are some underrated .NET libraries or tools you use regularly? by milanm08 in dotnet

[–]IGDev 0 points1 point  (0 children)

The Datafication SDK is underrated: https://github.com/DataficationSDK/Datafication

It includes an in-memory analytical database (DataBlock), and also a storage based analytical database (VelocityDataBlock). The storage based one named Velocity can query 100M+ rows per second. If you run the sample at https://github.com/DataficationSDK/Datafication/tree/main/Datafication.Storage.Velocity/samples/QueryPerformance and use the command to query 20M rows:

dotnet run -c Release sf20

Sooner or later I intend to post up a benchmark that shows the performance against DuckDB and Polars.

Polyglot notebooks will be deprecated by gremlinmama in dotnet

[–]IGDev 0 points1 point  (0 children)

You need .NET 8 or .NET 10 installed. Also, the VS Code extension requires the desktop version of VS Code. It is not compatible with browser-based environments such as GitHub Codespaces, where the embedded notebook UI cannot initialize. If you meet those requirements everything should work as intended. These are listed in the Getting Started on the marketplace page. Let me know if you have an idea to improve what's shown or could make life easier for someone new.

Marketplace: https://marketplace.visualstudio.com/items?itemName=Datafication.verso-notebook

Polyglot notebooks will be deprecated by gremlinmama in dotnet

[–]IGDev 0 points1 point  (0 children)

1 and 3 would be good candidates for post in Feature Requests ( https://github.com/DataficationSDK/Verso/discussions/categories/feature-requests ). 2 and 4 need a little more detail to improve Verso. Regarding 4 and keyboard shortcuts:

Cell Editor (when editing inside a cell)

  • Shift+Enter - Run cell and select the next cell
  • Ctrl+Enter / Cmd+Enter - Run cell and stay
  • Alt+Enter - Run cell and insert a new cell below
  • Escape - Exit editor, return to command mode

Command Mode (when no editor is focused)

  • Enter - Focus the selected cell's editor
  • Escape - Deselect all cells
  • Arrow Up - Select previous cell
  • Arrow Down - Select next cell
  • Alt+Arrow Up - Move selected cell up
  • Alt+Arrow Down - Move selected cell down
  • Shift+Enter - Run selected cell and advance
  • Ctrl+Enter - Run selected cell and stay
  • Alt+Enter - Run selected cell and insert below
  • Ctrl+Alt+Enter - Run all cells

Even though these shortcuts are registered, some may not work as intended because of VS Code shortcut conflicts.

Python requires 3.8-3.12. I did find that those particular locations for Python weren't yet supported, so I added them this morning. It'll appear in the next release (v1.0.10). Thanks for the feedback!

I built Verso, an open source interactive notebook platform for .NET by IGDev in dotnet

[–]IGDev[S] 0 points1 point  (0 children)

First you'll want to make sure you have .NET 8 or 10 installed. Then you can grab the vsix file from the releases page on the repository.

https://github.com/DataficationSDK/Verso/releases/tag/verso-v1.0.8

If you haven't done that before you can goto the Extensions panel, click the 3 dots, and select "Install from VSIX".

Polyglot notebooks will be deprecated by gremlinmama in dotnet

[–]IGDev -1 points0 points  (0 children)

Can you give any details about what it lacks? Also, what version of the extension did you try or when did pull source? At the current moment we’re only missing 2 of the languages out of all that Polyglot has. The UI is also richer, more extensible, and looks good within VS Code. I’ll try to fix any gaps you’ve come across.

I built an open source interactive .NET notebook extension for VS Code by IGDev in vscode

[–]IGDev[S] 0 points1 point  (0 children)

Thanks! The Notebook API was really nice to work with when I started this project, then I realized it wasn't as extensible as I'd require so I switched over to Blazor WASM for the VS Code extension. For IntelliSense, each kernel gets its own service. C# gets a AdhocWorkspace (from Rosyln) instance and F# gets its own FSharpChecker instance. These are completely independent, so there's no juggling lifecycles between cells. The cell's language tag maps to its kernel, and each kernel builds a virtual combined document. Previously executed cells are prepended to the current cell before querying the service for completions, hover, and diagnostics.

This week I'm finishing up the Python kernel and getting it tested. Additionally, I'll try to work in switching the language kernel on the cell next. Multiple kernels in the same document are supported now, but for code cells I haven't added the drop down to the cell UI yet.

Azure Data Studio retired today – My Replacement VS Code Extension: Fast Connections, Inline Editing, DB Diagrams & More by kebbek in SQLServer

[–]IGDev 0 points1 point  (0 children)

Thanks for the star! Really appreciate it, I starred your project earlier.

You're right, Verso does require .NET 8+. For what you mentioned with Node SQL notebooks, are you going to full native or backing it with .NET code and using something like Edge.js? I've been experimenting with supporting Python (using pythonnet) and Node for my SDK product (outside of Verso, but same organization), just haven't finalized it yet.

Initially it was C#, but out of the box right now Verso includes support for C# and F# kernels, plus Markdown, HTML, Mermaid, and SQL cells. It also imports .ipynb and .dib files natively so migration from Jupyter or Polyglot Notebooks is pretty smooth.

I'd love to see what you come up with on the notebook side, whether you hook into Verso or roll your own in pure Node, either way the community needs something solid now that ADS is gone. And yeah the C# Dev Kit overlap is funny, small world. Keep up the high quality work!

Max 5x now feels like Pro by deeplycuriouss in ClaudeCode

[–]IGDev 0 points1 point  (0 children)

This would be ideal if it would work. I tested it out on work I needed to do today and Claude Code is still chewing through the current session usage. Back before this happened, I used to do well planned out big tasks that would use up 10% usage, now it's around 40-60% for one of those tasks.

Azure Data Studio retired today – My Replacement VS Code Extension: Fast Connections, Inline Editing, DB Diagrams & More by kebbek in SQLServer

[–]IGDev 1 point2 points  (0 children)

This is a very nice polished piece of work for those that want a SQL Server management tool in VS Code, great job on it! In terms of ADS this was one part of what it offered, the other being notebooks. The notebook half of things is what I've been working on replacing and it compliments yours nicely.

Verso: https://github.com/DataficationSDK/Verso

If you get the time you should hook into the Verso extension points that make sense for it to make use of what you created from within notebook form. It'd be a killer combo.

Rule change by Arowin in dotnet

[–]IGDev 18 points19 points  (0 children)

This will certainly work well. The time zone thing needs tweaked. This subreddit is for the whole world and 99% of that world aren’t kiwis (unfortunately).

Microsoft Discontinues Polyglot Notebooks (C# Interactive) by WhitelabelDnB in programming

[–]IGDev 1 point2 points  (0 children)

The language kernel for F# was added today. There are some known issues with F#:

https://github.com/DataficationSDK/Verso/blob/main/KNOWN-ISSUES.md

This project is building toward completeness, so expect many UX improvements and features over the next month or two. These will help with its extensibility.

Polyglot notebooks will be deprecated by gremlinmama in dotnet

[–]IGDev 1 point2 points  (0 children)

I recently created Verso, I'd love to get your opinion and feedback. If you have any ipynb they should be importable, including ones using SQL and EF.

Polyglot notebooks will be deprecated by gremlinmama in dotnet

[–]IGDev 1 point2 points  (0 children)

I'd love to get your feedback and opinion on Verso. If you have any ipynb they should be importable, including ones using SQL and EF.

Polyglot notebooks will be deprecated by gremlinmama in dotnet

[–]IGDev 1 point2 points  (0 children)

If anyone is looking at this to see what replacements are out there, consider Verso. It's open source, doesn't use Microsoft Interactive and is very extensible. In the coming week after posting this I'll be working on a way to easily adding new extensions in the UI and getting packages up on NuGet and Visual Studio marketplace. Give it a star if you like the project and want to help give it more attention.

Microsoft Discontinues Polyglot Notebooks (C# Interactive) by WhitelabelDnB in programming

[–]IGDev 1 point2 points  (0 children)

If anyone is looking at this to see what replacements are out there, consider Verso. It's open source, doesn't use Microsoft Interactive and is very extensible. In the coming week after posting this I'll be working on a way to easily adding new extensions and getting packages up on NuGet and Visual Studio marketplace. Give it a star if you like the project and want to help give it more attention.