|
BGP is the glue of the internet. For a protocol that was produced on two napkins in 1989 it is both amazing and horrifying that it runs almost all of the ISP to ISP interactions and is now a very fundemental part of the internet. It's all fun and games until someone loses their battleship
|
|
|
|
|
The cloud, IoT and AI are turning the whole world into one great big computing opportunity, says Microsoft's chief executive. Where's the reboot switch?
|
|
|
|
|
Microsoft announced plans last week to block Flash, Shockwave, and Silverlight content from activating in Office 365. What's Flash?
|
|
|
|
|
Kent Sharkey wrote: What's Flash?
A comic book and TV show.
What Office has to do with either is beyond me.
|
|
|
|
|
You’re likely a developer and have used a code editor to debug and analyze your application failures. Few developers know or understand the “old school” way of troubleshooting to uncover additional details; enter the WinDbg debugger. "And I'm never going back to my old school"
|
|
|
|
|
Let's pretend we're using gdb
|
|
|
|
|
Console.WriteLine ("Here 1");
|
|
|
|
|
Labelled Speculative Store Bypass (variant 4), the latest vulnerability is a similar exploit to Spectre and exploits speculative execution that modern CPUs use. "Fast, Cheap, and Good…pick two"
|
|
|
|
|
Number one on the list of future C# features is Nullable Reference Types. But also on the table are enhancements to pattern matching, array slicing, asynchronous iterators, default interface methods, and possibly even records. Even #er?
Seems more than a bit of a repeat, but it's all in one spot, and there were a couple I don't remember seeing before.
|
|
|
|
|
For the first time, I think that some of these extensions are, at least as presented, getting it wrong. Semantically, many are great, but syntactically they seem to have opted for the least readable form possible...
return person switch
{
Professor p => $"Dr. {p.LastName}",
Student s => $"{s.FirstName} {s.LastName} ({s.Level})",
_ => $"{person.FirstName} {person.LastName}"
};
Seems pretty ugly. As is...
case Student ( var fn, _, "Cambell", var (_, _, ln) ) p : return $"{fn} is enrolled in {ln}’s class";
Indexing from the end of a string/array...
var lastCharacter = myString[^1];
I appreciate the features being proposed and use them in other languages, but really hope they manage to make these a bit more readable.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
(disclaimer. I know near zero C#, especially at this level).
Can you ELI5 the first two examples ?
Seriously, can you ? I've got no clue what I'm supposed to look at.
I'd rather be phishing!
|
|
|
|
|
Example 1:
C# 8:
return person switch
{
Professor p => $"Dr. {p.LastName}",
Student s => $"{s.FirstName} {s.LastName} ({s.Level})",
_ => $"{person.FirstName} {person.LastName}"
}; C# 7:
switch (person)
{
case Professor p:
{
return $"Dr. {p.LastName}";
}
case Student s:
{
return $"{s.FirstName} {s.LastName} ({s.Level})";
}
default:
{
return $"{person.FirstName} {person.LastName}";
}
} C# 6:
Professor p = person as Professor;
if (p != null)
{
return string.Format("Dr. {0}", p.LastName);
}
Student s = person as Student;
if (s != null)
{
return string.Format("{0} {1} ({2})", s.FirstName, s.LastName, s.Level);
}
return string.Format("{0} {1}", person.FirstName, person.LastName);
Example 2:
C# 8:
case Student ( var fn, _, "Cambell", var (_, _, ln) ) p:
{
return $"{fn} is enrolled in {ln}’s class";
} C# 7:
case Student s when s.LastName == "Cambell":
{
return $"{s.FirstName} is enrolled in {s.Professor.LastName}’s class";
} C# 6:
Student s = person as Student;
if (s != null && s.LastName = "Cambell")
{
return string.Format("{0} is enrolled in {1}’s class", s.FirstName, s.Professor.LastName);
}
Personally, I prefer the C# 7 version. But I can see the "switch expression" appealing to F# fans.
Match expressions (F#) | Microsoft Docs[^]
The recursive pattern (example 2) just looks horrible to me.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
modified 22-May-18 15:08pm.
|
|
|
|
|
Crikey, just shoot me !!!
I'd rather be phishing!
|
|
|
|
|
Oddly, I'm perfectly at home with similar features in Haskell and Rust, but somehow they just don't seem to sit well with the rest of C#'s syntax.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
'Silver Star with Bronze Clusters' awarded for exceptional bravery in the face of acronym-fire
«... thank the gods that they have made you superior to those events which they have not placed within your own control, rendered you accountable for that only which is within you own control For what, then, have they made you responsible? For that which is alone in your own power—a right use of things as they appear.» Discourses of Epictetus Book I:12
|
|
|
|
|
Being a developer these days is both good and bad. There are a lot of jobs available out there but there is a lot of competition too. 'What's with all those semi-colons?'
|
|
|
|
|
Treasury Secretary Steven Mnuchin urged the Justice Department to review the power that large technology firms such as Google have over the American economy, the latest U.S. official to back antitrust scrutiny of the industry. Have you now, or have you ever been, a company that the government can't understand?
|
|
|
|
|
Our tech requirements are stressing today's fashion. Fortunately, a new generation of designers is looking to the future of tech-capable clothing. "'Cause every girl crazy 'bout a sharp dressed man" (and vice versa)
|
|
|
|
|
New evidence in favor of a discrete form of data storage could change the way we understand the brain and the devices we build to interface with it. Mine's formatted using FAT
As many of you have suspected.
|
|
|
|
|
The brain stores information?
|
|
|
|
|
Kent Sharkey wrote: Mine's formatted using FAT
Mmmm! Donuts!
|
|
|
|
|
The problem with std::optional is that we lose information about errors. The function returns a value or something empty, so you cannot tell what went wrong. Only one is optional
|
|
|
|
|
That's fine - it should be used in limited circumstances where the error is obvious. For example, parsing an integer from a string will either recognise an integer or not - there really is not much more useful to say.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
The vast majority of botnet malware infections last under a day, according to a Fortinet report released last week —the Q1 2018 Threat Landscape Report. Bed rest and plenty of fluids recommended
|
|
|
|
|
Test reveals that the magic space unicorns pushing the EM-drive are magnetic fields. The "paradox" is only a conflict between reality and your feeling of what reality "ought to be"
|
|
|
|