The Official Status Thread
-
@Tsaukpaetra said in The Official Status Thread:
Attempting to whet my toes in Docker
Why on Earth would you want sharp toes?
-
@coldandtired said in The Official Status Thread:
@Tsaukpaetra said in The Official Status Thread:
Attempting to whet my toes in Docker
Why on Earth would you want sharp toes?
All the better to kick Donkeys with!
-
@Tsaukpaetra said in The Official Status Thread:
Oh, it's fine once you're inside
-
Status: I'm as surprised as you are, Azure:
-
Status: About to open mafia signups. Realized @ben_lubar never cleaned up after the last game. Sad.
Ben?
-
@Yamikuronue said in The Official Status Thread:
Realized @ben_lubar never cleaned up after the last game. SAD!.
It's a HUGE issue!
-
@Luhmann
#MMGA!
-
The Off By One Web Browser was created to demonstrate the speed and light footprint
It took me too many tries before I stopped reading that as "demonstrate the speed of light"
-
Status: if it's weird to bring a bag of dog fur into work just to mock a balding colleague then I don't want to be normal
-
@hungrier said in The Official Status Thread:
It took me too many tries before I stopped reading that as "demonstrate the speed of light"
It's so fast that the only limiting factor in loading the websites faster is the speed of light?
Yeah, I know, fat chance in 2017...
Filed under: all the JavaScripts!
-
Status: Is it weekend yet? (2:40 left)
-
Status: Left to choose between going out in awful weather while my decongestant isn't really working, or having sudden cold turkey caffeine withdrawal...
Let the
spiceDr Pepper flow! (Please no crasherino)
-
Status: Bwahahahaa! I merge your Pull Requests! Suckers!
-
Status: Clearing the backlog of unpublished reviews: two hours and counting.
At least I automated it.
-
@dkf
I hear @ben_lubar has a project in need of your unique talents.
-
@RaceProUK said in The Official Status Thread:
Status: Clearing the backlog of unpublished reviews: two hours and counting.
At least I automated it.
It's only just got past a third of the way through
-
Status: a critical error occurred while initializing. System logs and memory snapshots not present for diagnosis.
In other news: did anyone catch the number of that bus that hit me at around 6:21a?
-
@Tsaukpaetra was it
a12:6
?
-
@Mikael_Svahnberg said in The Official Status Thread:
@Tsaukpaetra was it
a12:6
?It might be gi7:9 for all I know!
-
-
@RaceProUK said in The Official Status Thread:
@RaceProUK said in The Official Status Thread:
Status: Clearing the backlog of unpublished reviews: two hours and counting.
At least I automated it.
It's only just got past a third of the way through
Halfway now.
I'm only in the office for another 30 minutes though.
-
@RaceProUK said in The Official Status Thread:
@RaceProUK said in The Official Status Thread:
@RaceProUK said in The Official Status Thread:
Status: Clearing the backlog of unpublished reviews: two hours and counting.
At least I automated it.
It's only just got past a third of the way through
Halfway now.
I'm only in the office for another 30 minutes though.
Race to the finish... Go! 🏁
-
-
-
@RaceProUK said in The Official Status Thread:
@PleegWat I get two different results:
says 'Yes'
http://isittheweekendyet.co.uk/ says 'No'P.O.E.T.S.
-
Status: Quite impressed with what some of the C# XAML controls bring to the table out of the box.
So, I'm parsing some USB packet logs in order to reverse engineer what one of my USB devices is doing because the documentation for that is frankly terrible and needs a real world log of the data exchanged to make heads or tails of it. Only problem was that if I break it down into a List of Commands and Responses, I get about 1000 items in my
List<CommandsAndResponses>
, even after filtering for only unique ones.So, my first attempt was to make this:
<ScrollViewer> <TextBox /> </ScrollViewer/>
and simply plonk a serialized string of my list into that TextBox. Performed horribly, as expected. On my search for a better solution, I stumbled over this article.
And, what do you know, one
override public string ToString()
later, I could actually scroll through the list of items at a breathtaking speed.
-
Status: waiting since this morning for Windows to delete a couple of old unused sandboxes. Progress dialog says about 50 GB and 300k files to delete, currently (8h later) 299k files remaining.
Something tells me that this won't be done tonight.
Also, fuck McAfee On-Access Scanner (I guess, I can't see any other reason).
-
-
@RaceProUK said in The Official Status Thread:
@accalia said in The Official Status Thread:
P.O.E.T.S.
:N: :O:
-
In all seriousness though, I don't get it.
-
@accalia said in The Official Status Thread:
P.O.E.T.S.
Nope, I pay someone else to do that.
'Poetsen' is dutch for cleaning
-
@RaceProUK said in The Official Status Thread:
In all seriousness though, I don't get it.
and it was a brit i got it from in the first place too......
Piss
Off
Early
Tomorrow's
Saturday.:-P
-
I should have guessed that.
-
@Tsaukpaetra said in The Official Status Thread:
All the better to kick Donkeys with!
Forget llamas, Donkeys are where it's at!
Blindly typing
network interface lagg0 delete
followed bynetwork interface eth0 up
fixed the network issues!Woot!
In other news.... WTF with "EFI Blind Mode". Why is that a thing? You splatted text just fine there, just don't change video modes and we'll all be happy! FFS BSD!
-
@Rhywden said in The Official Status Thread:
Status: Quite impressed with what some of the C# XAML controls bring to the table out of the box.
So, I'm parsing some USB packet logs in order to reverse engineer what one of my USB devices is doing because the documentation for that is frankly terrible and needs a real world log of the data exchanged to make heads or tails of it. Only problem was that if I break it down into a List of Commands and Responses, I get about 1000 items in my
List<CommandsAndResponses>
, even after filtering for only unique ones.So, my first attempt was to make this:
<ScrollViewer> <TextBox /> </ScrollViewer/>
and simply plonk a serialized string of my list into that TextBox. Performed horribly, as expected. On my search for a better solution, I stumbled over this article.
And, what do you know, one
override public string ToString()
later, I could actually scroll through the list of items at a breathtaking speed.Share plz? Prior developer decided to splurge logs into one such component and it performs horrible enough that we can't even get it to scroll (programmatically) to the end...
-
@Rhywden You can also just enable scrolling for the textbox I think, and leave out the scrollviewer. Should be a single attribute.
-
@Magus said in The Official Status Thread:
@Rhywden You can also just enable scrolling for the textbox I think, and leave out the scrollviewer. Should be a single attribute.
Yeah for some reason I remember that not working if you also wanted to be able to copy text out of it.
-
@Tsaukpaetra In your case, if this is incredibly long, I suggest a
<ListBox>
or whatever, since you can enable scroll virtualization for those, so it only renders the lines that are in view.
-
@Tsaukpaetra That's likely with my second suggestion for sure.
-
Status: Remember a while back when I said that it was difficult to explain some IT issues in a way that clients would even understand? Well, today I diagnosed an issue of internet slowness to an issue where apparently the DNS forwarder either stopped responding or otherwise became unresponsive. I am not entirely sure why, but that was the issue.
Client: "So what was the issue with the internet this morning?"
: "Uhhhhhhh, kind of hard to explain. It is resolved now."
Client: "Was it a Comcast issue? Do we need to upgrade our speed or anything like that?"
: "It wasn't Comcast. The prior IT service configured some strange DNS forwarder on the DNS server and it apparently went offline."
Client: "What is a DNS forwarder?"
: "Uhhhhhh, that is kind of hard to put in layman's terms. See, we run a local DNS server on the network that resolves the hostnames to IP addresses. If that DNS server cannot resolve a hostname, it goes to a DNS forwarder. If that DNS forwarder does not respond then the request moves on to a server that handles root hints. This whole process takes time and that is what makes the internet seem slow despite having plenty of bandwidth. We set the proper root forwarder and now it is taken care of."
Client: "I am not sure I understand..."
: "Seriously, it is hard to explain in layman's terms and I can hear your eyes gloss over even over the phone. I could get in to metaphors that talk about phone books and looking up addresses, but it would take a long time. The issue is resolved, it will not occur again."
-
@Polygeekery
Also fun is when someone sets a DNS forwarder of the local ISP's DNS server because the lower latencies, and then you don't really even think to check that (because, seriously, wtf, a forwarder?) and change ISPs. Which always causes hilarity at cutover time.
-
@Tsaukpaetra said in The Official Status Thread:
@Rhywden said in The Official Status Thread:
Status: Quite impressed with what some of the C# XAML controls bring to the table out of the box.
So, I'm parsing some USB packet logs in order to reverse engineer what one of my USB devices is doing because the documentation for that is frankly terrible and needs a real world log of the data exchanged to make heads or tails of it. Only problem was that if I break it down into a List of Commands and Responses, I get about 1000 items in my
List<CommandsAndResponses>
, even after filtering for only unique ones.So, my first attempt was to make this:
<ScrollViewer> <TextBox /> </ScrollViewer/>
and simply plonk a serialized string of my list into that TextBox. Performed horribly, as expected. On my search for a better solution, I stumbled over this article.
And, what do you know, one
override public string ToString()
later, I could actually scroll through the list of items at a breathtaking speed.Share plz? Prior developer decided to splurge logs into one such component and it performs horrible enough that we can't even get it to scroll (programmatically) to the end...
There's not much to share - I basically have a class which gets plonked into an observablelist which then gets displayed. And since the ListView is automatically virtualized, only the stuff in view and the stuff likely to come into view are loaded. It's UWP, though. Should exist for WPF as well, however.
<Page x:Class="USBLogParser.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:USBLogParser" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" DataContext="{Binding RelativeSource={RelativeSource Self}}" mc:Ignorable="d"> <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="*" /> </Grid.RowDefinitions> <Button x:Name="button" Grid.Row="0" Content="Load File" Click="loadLogClick"/> <ListView x:Name="dataList" Height="800" Grid.Row="1" ItemsSource="{Binding Path=LogLines}"> <ListView.ItemsPanel> <ItemsPanelTemplate> <ItemsStackPanel /> </ItemsPanelTemplate> </ListView.ItemsPanel> </ListView> </Grid> </Page>
and
using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Text.RegularExpressions; using Windows.UI.Xaml; using Windows.UI.Xaml.Controls; namespace USBLogParser { public class CommandAndResponse { public List<string> Command { get; set; } public List<string> Response { get; set; } public string Text { get; set; } public int Repetitions { get; set; } public CommandAndResponse() { this.Command = new List<string>(); this.Response = new List<string>(); this.Text = string.Empty; this.Repetitions = 0; } public override string ToString() { return this.Text; } } public sealed partial class MainPage : Page { private ObservableCollection<CommandAndResponse> logLines = new ObservableCollection<CommandAndResponse>(); public MainPage() { this.InitializeComponent(); } private async void loadLogClick(object sender, RoutedEventArgs e) { var picker = new Windows.Storage.Pickers.FileOpenPicker(); picker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail; picker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.DocumentsLibrary; picker.FileTypeFilter.Add(".log"); picker.FileTypeFilter.Add(".txt"); Windows.Storage.StorageFile file = await picker.PickSingleFileAsync(); if(file != null) { var lines = await Windows.Storage.FileIO.ReadLinesAsync(file); for(int i = 0; i < lines.Count; i++) { //Mangle lines CommandAndResponse comAndRes = new CommandAndResponse(); logLines.add(comAndRes); }; } } }
My logfiles are small enough so I can load it all into memory. If your files are too large for this approach, the article I linked gave some pointers on how to incrementally load stuff into memory.
-
@Rhywden Seems like almost exactly the right way to do things, though as a bit of a purist, I'm annoyed to see a
RelativeSource Self
binding for the datacontext. (If this is a small one-page app or something, then whatever, it's fine, it's just mostly bad)
-
@Magus said in The Official Status Thread:
@Rhywden Seems like almost exactly the right way to do things, though as a bit of a purist, I'm annoyed to see a
RelativeSource Self
binding for the datacontext. (If this is a small one-page app or something, then whatever, it's fine, it's just mostly bad)It is indeed a small, one-page app :)
-
@Yamikuronue said in The Official Status Thread:
Status: About to open mafia signups. Realized @ben_lubar never cleaned up after the last game. Sad.
Ben?
Sorry, I was working on something. I'll clean up Mafia.
-
@ben_lubar said in The Official Status Thread:
Sorry, I was working on something.
If you mean "I was watching 5 ASCII art dwarves gangbang a keg of beer", just say that.
-
Status: G'dammit Sudafed, the whole point of taking you is that you make my nose stop running...
-
@izzion said in The Official Status Thread:
Status: G'dammit Sudafed, the whole point of taking you is that you make my nose stop running...
Nooo.... It's to make your nose run like crazy until it can't run no more, and thus produce the desired end effect of not running. :P
-
Status:
Well...shit.
-
@Tsaukpaetra said in The Official Status Thread:
FFS BSD!
WTF apparently the BSD hypervisor is unable to make VMs with more than 16 cores without a rebuild of the kernel and world. Because apparently overhead for VMs that don't have that many cores.
This was reported back in 2014.
Guess what's not been talked about or attempted to be fixed since then?
In other news today @Tsaukpaetra does a/b testing with a 16 core VM versus the bare-metal 20 core host to see if this is still an option (since I believe the biggest bottleneck is the disk access during packaging and distribution).
Later: First World Problems: Too many cores to handle!