Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Polio Vax Scene
Apr 5, 2009



Something like this?:

pre:
        static T[] Foo<T>(params T[] c)
        {
            var ret = new List<T>();
            foreach (var obj in c) { ret.Add(obj); }
            return ret.ToArray();
        }
Seems kind of redundant to me but maybe I'm misunderstanding the goal

Adbot
ADBOT LOVES YOU

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!
if I use a generic, doesn't that mean I have the type at compile time? Can I pass a type deduced from reflection into a generic?

FrantzX
Jan 28, 2007
Your are looking for Array.CreateInstance.

https://docs.microsoft.com/en-us/dotnet/api/system.array.createinstance?view=netframework-4.8

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Rocko Bonaparte posted:

How can I use reflection in C# to create an array (as in T[], not Array)? All I've found involves an explicit cast, but I don't necessarily know the type.

What I'm trying to do is take a List of objects and feed it into a function that has a params field. I have its MethodInfo and can poke the parameters. The List has all the arguments for the params field just appended on. I need to collapse them down to an array, apparently; I got type exceptions otherwise. I'd love to know if there's a better way, by the way. So if I have:

code:
void Foo(string a, int b, params float[] c)
I might wind up with an input List of:
"bar", 1
"bar", 1, 2.0, 3.0, 4.0

I need to convert these into:
"bar", 1, null
"bar", 1, [2.0, 3.0, 4.0]

...and of course use ToArray() to finish the deal. It looks like I can't use Array as an argument instead of T[]. I don't know T at compile time; I just know it for this example. Yes, there are some assumptions about my list and I assume I have to do something to cast the individual elements too.

Using reflection is, in general, a code smell. What are you trying to accomplish? Why can't you use an interface to accomplish it?

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

New Yorp New Yorp posted:

Using reflection is, in general, a code smell. What are you trying to accomplish? Why can't you use an interface to accomplish it?

I'm working on a cooperatively-multithreaded Python interpreter and I'm having to shepherd parameters coming from the interpreter into embedded .net functions. The list is the parameters as recovered from the interpreter stack to pass into CALL_FUNCTION. The function that exposed this problem is the internal equivalent of Python's __build_class__, which is the first one I've had to implement using *args. The .net equivalent is params, so my .NET implementation of __build_class__ is using a signature that includes params to accept the *args.

I'm nowhere near implementing the full language spec here but I do need subclassing and those do come in as 0+ optional parameters to __build_class__ in the wild so I'm trying to honor that convention from CPython as much as possible. I'm doing a lot of this particularly for some tweaks to do coroutines. No, IronPython cannot do that and I did poke it with a stick first.

That's what I tried to use yesterday when I first was searching about this. There was a Stack Overflow discussion about it that ended with the same problem I had. How do I cast that to an actual [] array? MethodInvoke is refusing to accept the Array data type as an acceptable argument to a params parameter. The people there told the OP to just cast to T[], but that only works if you know T statically.

Edit: Actually I'm looking this up more and isn't that kind of strange? Is Array actually what the base array type is anyways?

Rocko Bonaparte fucked around with this message at 20:56 on Jun 26, 2019

mystes
May 31, 2006

Rocko Bonaparte posted:

That's what I tried to use yesterday when I first was searching about this. There was a Stack Overflow discussion about it that ended with the same problem I had. How do I cast that to an actual [] array? MethodInvoke is refusing to accept the Array data type as an acceptable argument to a params parameter. The people there told the OP to just cast to T[], but that only works if you know T statically.
Does casting it to object[] not work? If it's a compile time error I don't think MethodInvoke is checking the type signature of the function you're calling because obviously it doesn't know it, it just wants its own argument to be object[].

mystes fucked around with this message at 22:32 on Jun 26, 2019

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!
Actually I think Array.CreateInstance is fine. I think in last night's shenanigans that I had some detritus make it into the parameters and it was choking on that instead of that particular array. I rearranged it and I can see myself making it into the function now with the right stuff going into the params field.

CapnAndy
Feb 27, 2004

Some teeth long for ripping, gleaming wet from black dog gums. So you keep your eyes closed at the end. You don't want to see such a mouth up close. before the bite, before its oblivion in the goring of your soft parts, the speckled lips will curl back in a whinny of excitement. You just know it.
Can someone explain the stupid "type or namespace name 'ProfileCommon' could not be found" error to me? StackOverflow's answers are all exceptionally smug even by their standards and full of dead links that would have supposedly explained what's going on. All I know is I made a Web Application in VS2017 (because web site isn't a frigging option any more), and if I copy the raw files to the web server it works, but if I publish it first I get that dumb error.

What's it bitching about and what do I need to stick in where to make it shut up?

Scaramouche
Mar 26, 2001

SPACE FACE! SPACE FACE!

You've probably read this then but it seems pretty straightforward:
https://stackoverflow.com/questions/11073973/the-type-or-namespace-name-profilecommon-could-not-be-found

Basically the default project creates a config profile out of the box that doesn't get deployed to server as part of publish. The guys in the question above add some Using directives and the last one just stubs out the class so it doesn't complain about it.

CapnAndy
Feb 27, 2004

Some teeth long for ripping, gleaming wet from black dog gums. So you keep your eyes closed at the end. You don't want to see such a mouth up close. before the bite, before its oblivion in the goring of your soft parts, the speckled lips will curl back in a whinny of excitement. You just know it.

Scaramouche posted:

You've probably read this then but it seems pretty straightforward:
https://stackoverflow.com/questions/11073973/the-type-or-namespace-name-profilecommon-could-not-be-found

Basically the default project creates a config profile out of the box that doesn't get deployed to server as part of publish. The guys in the question above add some Using directives and the last one just stubs out the class so it doesn't complain about it.
I have, yeah. I did try adding the Using directives but it's not like he said where, so I stuck 'em on Global.asax and they did nothing. But that's to be expected, I'd think, they're just empty Using directives, I'm not actually using that stuff. That stub solution did work, though! I didn't try it because it had 0 votes and no comments.

I still don't love that apparently that was straightforward to you, though, because it kept making my eyes cross and that means I've got a gap in my knowledge somewhere.

Scaramouche
Mar 26, 2001

SPACE FACE! SPACE FACE!

Yeah it's kind of a weird area because it's not really code thing like "x = !(thing) ? 1 : 2;" but instead is kind of a Microsoft head file/project housekeeping thing. That yes, the entity defined in the default project does need to be hooked up some way or somehow worked around, but it doesn't really get taught/learned the same way programming concepts do.

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe
Any WPF/XAML experts? I have a toggle button (more exactly a Telerik RadRibbonToggleButton) and when it is checked it turns a really strong shade of blue, the same colour as the window's title bar. I don't like this. I want to be able to control what shade of blue it turns when checked. I have completely failed to find a way to do this. I tried setting the Background property of the button; it works as long as the button isn't checked, but gets ignored when the button is checked - it turns the same shade of blue. I tried modifying the Style in the XAML file so that it sets the Background property and has a trigger to set the Background differently when the button "IsChecked". Predictably, this also did not work. I saw a StackOverflow post that suggested changing the Template that applies to toggle buttons. I tried doing that and it just hosed up all the toggle buttons so that the icons don't display, which is obviously no good.

I have non-toggle Buttons on this Ribbon whose background colour I can control. I could therefore achieve what I want to do by changing the toggle buttons into normal Buttons and setting the background on them by binding to properties, but this seems like hacking around my own lack of understanding.

Careful Drums
Oct 30, 2007

by FactsAreUseless

Hammerite posted:

Any WPF/XAML experts? I have a toggle button (more exactly a Telerik RadRibbonToggleButton) and when it is checked it turns a really strong shade of blue, the same colour as the window's title bar. I don't like this.

Wild guess: have you changed your machine's desktop color theme, and does changing it affect how the toggle button looks when it's enabled? I've used some apps where buttons and other ui elements turn pink to match my ridiculous color theme.

Not that "change your theme" is a practical workaround, but it might explain why it's not responding to the things you've tried changing so far.

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

Careful Drums posted:

Wild guess: have you changed your machine's desktop color theme, and does changing it affect how the toggle button looks when it's enabled? I've used some apps where buttons and other ui elements turn pink to match my ridiculous color theme.

Not that "change your theme" is a practical workaround, but it might explain why it's not responding to the things you've tried changing so far.

I haven't changed the machine's desktop color scheme to my knowledge.

I just tried opening up the "themes and related settings" widget and selecting a different colour. It caused the taskbar and various window title bars to change color, but nothing changed about the app I'm working on, even after I closed and reopened it.

raminasi
Jan 25, 2005

a last drink with no ice

Hammerite posted:

Any WPF/XAML experts? I have a toggle button (more exactly a Telerik RadRibbonToggleButton) and when it is checked it turns a really strong shade of blue, the same colour as the window's title bar. I don't like this. I want to be able to control what shade of blue it turns when checked. I have completely failed to find a way to do this. I tried setting the Background property of the button; it works as long as the button isn't checked, but gets ignored when the button is checked - it turns the same shade of blue. I tried modifying the Style in the XAML file so that it sets the Background property and has a trigger to set the Background differently when the button "IsChecked". Predictably, this also did not work. I saw a StackOverflow post that suggested changing the Template that applies to toggle buttons. I tried doing that and it just hosed up all the toggle buttons so that the icons don't display, which is obviously no good.

I have non-toggle Buttons on this Ribbon whose background colour I can control. I could therefore achieve what I want to do by changing the toggle buttons into normal Buttons and setting the background on them by binding to properties, but this seems like hacking around my own lack of understanding.

I think you need to figure out what specific hook Telerik has given you to do this. Hopefully one exists.

For my own content: I found a static initializer that uses HttpContext.Current today. I’d post in the coding horror thread but I don’t think they’d get it.

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

Hammerite posted:

Any WPF/XAML experts? I have a toggle button (more exactly a Telerik RadRibbonToggleButton) and when it is checked it turns a really strong shade of blue, the same colour as the window's title bar. I don't like this. I want to be able to control what shade of blue it turns when checked. I have completely failed to find a way to do this. I tried setting the Background property of the button; it works as long as the button isn't checked, but gets ignored when the button is checked - it turns the same shade of blue. I tried modifying the Style in the XAML file so that it sets the Background property and has a trigger to set the Background differently when the button "IsChecked". Predictably, this also did not work. I saw a StackOverflow post that suggested changing the Template that applies to toggle buttons. I tried doing that and it just hosed up all the toggle buttons so that the icons don't display, which is obviously no good.

I have non-toggle Buttons on this Ribbon whose background colour I can control. I could therefore achieve what I want to do by changing the toggle buttons into normal Buttons and setting the background on them by binding to properties, but this seems like hacking around my own lack of understanding.

https://docs.telerik.com/devtools/wpf/controls/radribbonview/styling-and-appearance/styling-ribbontogglebutton RadRibbonToggleButton is just an extension of this, so the same stuff may apply?

mst4k
Apr 18, 2003

budlitemolaram

Hopefully this makes sense...

I'm developing a fun project in C# using Rider/MacOS/.Net Core 2.2. It's a lot of fun and Rider is fantastic.

I'm to the point to where I need to start writing some fairly complex linq queries and I'd like to test these out on a scratch pad similar to the experience LinqPad gave back in the .NET 4.5.x days. I noticed Rider has a "Scratches" section but I'm either missing something or just not 'getting it' - does anyone know how I could do something similar to this using Rider?

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

karma_coma posted:

Hopefully this makes sense...

I'm developing a fun project in C# using Rider/MacOS/.Net Core 2.2. It's a lot of fun and Rider is fantastic.

I'm to the point to where I need to start writing some fairly complex linq queries and I'd like to test these out on a scratch pad similar to the experience LinqPad gave back in the .NET 4.5.x days. I noticed Rider has a "Scratches" section but I'm either missing something or just not 'getting it' - does anyone know how I could do something similar to this using Rider?

I know rider has LINQ support in its recommendation engine. I usually just write my really dumb loops and press alt+enter a couple times. :shrug:

Funking Giblet
Jun 28, 2004

Jiglightful!

karma_coma posted:

Hopefully this makes sense...

I'm developing a fun project in C# using Rider/MacOS/.Net Core 2.2. It's a lot of fun and Rider is fantastic.

I'm to the point to where I need to start writing some fairly complex linq queries and I'd like to test these out on a scratch pad similar to the experience LinqPad gave back in the .NET 4.5.x days. I noticed Rider has a "Scratches" section but I'm either missing something or just not 'getting it' - does anyone know how I could do something similar to this using Rider?
edit: Ooops didn't see Mac only...

For windows...
Write code in a .cs file, right click the file in Solution Explorer and click "Execute in Interactive"

https://dailydotnettips.com/use-c-interactive-window-for-your-coding-experiment-in-visual-studio-2015/

Funking Giblet fucked around with this message at 22:08 on Jul 14, 2019

mst4k
Apr 18, 2003

budlitemolaram

leper khan posted:

I know rider has LINQ support in its recommendation engine. I usually just write my really dumb loops and press alt+enter a couple times. :shrug:

Hahaha, this is what i've been doing ;) Rider/Resharper suggestions are fantastic.

I was kind of hoping there was an easier way ... I remember defining your Db in LinqPad and then being able to go to town on writing some queries but I may be wrong about how much set up was required.

Thanks for the suggestions guys :)

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

C# interactive should be cross-platform tooling. Even if Rider doesn't have a specific window for it, you should be able to launch csi.exe from the command line.

Save a .csx script that loads up your database, then run queries in the CLI.

mst4k
Apr 18, 2003

budlitemolaram

NihilCredo posted:

C# interactive should be cross-platform tooling. Even if Rider doesn't have a specific window for it, you should be able to launch csi.exe from the command line.

Save a .csx script that loads up your database, then run queries in the CLI.

It does, and this is exactly what I needed. Thanks a million, this solved what I was after.

NoDamage
Dec 2, 2000

Hammerite posted:

Any WPF/XAML experts? I have a toggle button (more exactly a Telerik RadRibbonToggleButton) and when it is checked it turns a really strong shade of blue, the same colour as the window's title bar. I don't like this. I want to be able to control what shade of blue it turns when checked. I have completely failed to find a way to do this. I tried setting the Background property of the button; it works as long as the button isn't checked, but gets ignored when the button is checked - it turns the same shade of blue. I tried modifying the Style in the XAML file so that it sets the Background property and has a trigger to set the Background differently when the button "IsChecked". Predictably, this also did not work. I saw a StackOverflow post that suggested changing the Template that applies to toggle buttons. I tried doing that and it just hosed up all the toggle buttons so that the icons don't display, which is obviously no good.

I have non-toggle Buttons on this Ribbon whose background colour I can control. I could therefore achieve what I want to do by changing the toggle buttons into normal Buttons and setting the background on them by binding to properties, but this seems like hacking around my own lack of understanding.
Telerik has its own set of themes which have custom styles defined for all of their widgets (and also style overrides for all of the system widgets). What theme do you have set up for Telerik? Essentially what you'll need to do is create a custom style that inherits from the default RadRibbonToggleButtonStyle and then override the appropriate properties for the checked state, and/or possibly override the control template as well, but the specifics will depend on exactly which theme you're using.

nielsm
Jun 1, 2009



I have two WPF (.NET Framework 4.5) applications. I'd like to make a sort of soft integration between them: If both are installed, one can detect the other is installed, and offer to send a message to the other. If the other is already running, the message is sent to the existing instance, otherwise start a new instance.
This sounds very similar to what an out-of-process COM server can do, but it seems that pattern is not well supported by .NET Framework.
Any suggestions for other technologies to look at, or should I just do something "stupid" with Win32 messages, named pipes, or similar?

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe


NoDamage posted:

Telerik has its own set of themes which have custom styles defined for all of their widgets (and also style overrides for all of the system widgets). What theme do you have set up for Telerik? Essentially what you'll need to do is create a custom style that inherits from the default RadRibbonToggleButtonStyle and then override the appropriate properties for the checked state, and/or possibly override the control template as well, but the specifics will depend on exactly which theme you're using.

Thanks for the tips. I can see I need to get a better understanding of how Telerik's styles work if I want to take this any further.

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

nielsm posted:

I have two WPF (.NET Framework 4.5) applications. I'd like to make a sort of soft integration between them: If both are installed, one can detect the other is installed, and offer to send a message to the other. If the other is already running, the message is sent to the existing instance, otherwise start a new instance.
This sounds very similar to what an out-of-process COM server can do, but it seems that pattern is not well supported by .NET Framework.
Any suggestions for other technologies to look at, or should I just do something "stupid" with Win32 messages, named pipes, or similar?

This might be useful:

http://blogs.microsoft.co.il/arik/2010/05/28/wpf-single-instance-application/

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

To the original question: this is kind of a tangent answer, that mostly worries about using mutex's to ensure that an app only runs once. (It also uses Remoting, so it won't be portable to .NET Core)
In terms of cross-process communication like that, you've got a couple of problems to solve:
-Identifying that the other product is installed
-Talking to it

In terms of identification - are these both in-house applications with well-known identities? In terms of going 'hey, is this installed?' that sounds a lot like a problem for just peeking at the registry(either for your own key, or Windows's own install list) and/or filesystem.

In terms of talking to it, how robust of a communication protocol do you need? Does the other process need to send responses? Named pipes have pretty clean support in .NET and are simple enough to get going. Do you NEED a super-fancy solution like a middleman service?


But back to that link:
I've only skimmed it a bit, but what's all the ceremony about? Is there some ultra-harmful thing in the direct solution of 'check for existing Mutex, exit out immediately if it exists, otherwise create it'?

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

Cuntpunch posted:

To the original question: this is kind of a tangent answer, that mostly worries about using mutex's to ensure that an app only runs once. (It also uses Remoting, so it won't be portable to .NET Core)
In terms of cross-process communication like that, you've got a couple of problems to solve:
-Identifying that the other product is installed
-Talking to it

In terms of identification - are these both in-house applications with well-known identities? In terms of going 'hey, is this installed?' that sounds a lot like a problem for just peeking at the registry(either for your own key, or Windows's own install list) and/or filesystem.

In terms of talking to it, how robust of a communication protocol do you need? Does the other process need to send responses? Named pipes have pretty clean support in .NET and are simple enough to get going. Do you NEED a super-fancy solution like a middleman service?


But back to that link:
I've only skimmed it a bit, but what's all the ceremony about? Is there some ultra-harmful thing in the direct solution of 'check for existing Mutex, exit out immediately if it exists, otherwise create it'?

I can't comment on how it compares to your suggestion of using a Mutex because I haven't tried my hand at implementing that. Looking at relevant questions on StackOverflow, it appears that there are a lot of details to get right if you do go down that route: https://stackoverflow.com/questions/229565/what-is-a-good-pattern-for-using-a-global-mutex-in-c/229567

The reason I posted it is that nielsm specifically mentioned the need to handle messages in an existing instance of the application or start a new instance, depending on whether an instance exists - and I knew that this code supports that use case, because we use this approach in an application I was involved in developing last year that does exactly that.

nielsm
Jun 1, 2009



Yes both are in-house applications. It would be a UI nightmare to properly combine them, but reasonably simple to add some basic "send this item to the other app" UI.

I looked at the class in that blog post, and it does look like an overly specialized solution for people who don't want to understand what IPC is, but the IpcChannel class it uses seems useful as a way to send structured messages.

Mr Shiny Pants
Nov 12, 2012

nielsm posted:

Yes both are in-house applications. It would be a UI nightmare to properly combine them, but reasonably simple to add some basic "send this item to the other app" UI.

I looked at the class in that blog post, and it does look like an overly specialized solution for people who don't want to understand what IPC is, but the IpcChannel class it uses seems useful as a way to send structured messages.

What I've seen done, looking at something like Quixel bridge that sends data to other apps, is to have an application listen on a port and just send stuff over the network. This won't start a new instance though.

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

Hammerite posted:

I can't comment on how it compares to your suggestion of using a Mutex because I haven't tried my hand at implementing that. Looking at relevant questions on StackOverflow, it appears that there are a lot of details to get right if you do go down that route: https://stackoverflow.com/questions/229565/what-is-a-good-pattern-for-using-a-global-mutex-in-c/229567

The reason I posted it is that nielsm specifically mentioned the need to handle messages in an existing instance of the application or start a new instance, depending on whether an instance exists - and I knew that this code supports that use case, because we use this approach in an application I was involved in developing last year that does exactly that.

In doing some more peeking at it, it looks like the 'big' problem this solves is less about the described problem - 'how do I ensure only a single instance' - and more one of 'if (x) is running and someone attempts to start a new process, with args, then make sure that the second process terminates early, but that the args it received are sent to the running instance for handling'.

The SO post has some information, but is also a little bit in the weeds on some edge cases that the directly stated use case doesn't involve (what happens if two users on the same machine try to run the same 'single-instance' app?) - but even that still somewhat seems predicated upon a use *as a Mutex*. Where you're using this as a synchronization object, rather than simply as a system level flag of 'this application is running'.

In that simplified case, is there really a harm in Mutex.TryOpenExisting?

nielsm
Jun 1, 2009



Win32/NT kernel mutex objects can be created as either system global or session local, by adding a Global\ or Local\ prefix to the mutex name. I don't know how well that translates to .NET Framework. A session local mutex will only be visible in the logon session that created it.
I'm surprised .NET does not have a good (and easy) local RPC mechanism.

CHEF!!!
Feb 22, 2001

Does anyone have any recommendations for a complete novice's guide to learning C#? I've gotten a DevOps job that didn't run into the infuriating problem of "Oh you need 3+ years of coding experience for us to even consider you, gently caress off", they're willing to let me get up to speed, but I need to start practicing / hitting the books yesterday.

I was a comp science major for a semester many moons ago (2001 or so), I know the very basics of C++ still, I can cobble together BASH and Python scripts OKish... so yeah, figured I'd ask for recommendations in here.

But the fact that I've been a Linux admin for 12 years, they're Azure, and they gave me a 4' wide desk "just for now" already has Star Trek klaxons ringing in my head... but I digress.

Polio Vax Scene
Apr 5, 2009



This was my favorite site starting out.
https://www.dotnetperls.com/

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

CHEF!!! posted:

I've been a Linux admin for 12 years, they're Azure

I don't see how their choice of cloud platform relates to your sysadmin experience.

Mr Shiny Pants
Nov 12, 2012

New Yorp New Yorp posted:

I don't see how their choice of cloud platform relates to your sysadmin experience.

Well if they are running Windows VMs I could see it matter to them. I don't know how that is weird.

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

Mr Shiny Pants posted:

Well if they are running Windows VMs I could see it matter to them. I don't know how that is weird.

Azure is platform neutral. You can have an entire Linux cloud in Azure.

CHEF!!!
Feb 22, 2001

Cuntpunch posted:

Azure is platform neutral. You can have an entire Linux cloud in Azure.

New Yorp New Yorp posted:

I don't see how their choice of cloud platform relates to your sysadmin experience.

Sorry, should have been more specific about this. They chose Azure because of the MS licensing savings, Linux seems to be a curiosity to them, and I pray I am wrong about the latter. I also failed to mention I've used AWS for 6 years and my Azure experience is personal level tinkering so to say I'm in "oh poo poo oh poo poo must catch up" mode right now is like saying water is wet.

Thanks for the recommendation, Polio Vax Scene.

CHEF!!! fucked around with this message at 11:52 on Jul 19, 2019

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

CHEF!!! posted:

Sorry, should have been more specific about this. They chose Azure because of the MS licensing savings, Linux seems to be a curiosity to them, and I pray I am wrong about the latter. I also failed to mention I've used AWS for 6 years and my Azure experience is personal level tinkering so to say I'm in "oh poo poo oh poo poo must catch up" mode right now is like saying water is wet.

Thanks for the recommendation, Polio Vax Scene.

Hopefully they're in the process of modernizing things or you'll have the ability to influence the direction they head going forward, because these days it's all about PaaS applications and containers. In a lot of cases, the base OS that applications run on is simply not relevant on a day to day basis.

If they're stuck in a mindset of "we must manage our own Windows VMs" then yeah, that's going to suck. But the tooling for that is largely platform agnostic unless they've gone the desired state configuration route.

Adbot
ADBOT LOVES YOU

Mr Shiny Pants
Nov 12, 2012

Cuntpunch posted:

Azure is platform neutral. You can have an entire Linux cloud in Azure.

That is why I said "if they are running Windows VMs".

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply