Re: AI [GitHub Copilot]

2024-07-30 Thread Nathan Schultz via ozdotnet
My Copilot trial is expiring today, and I'm still wondering whether I
should continue it.
It's ... ok. Most of the time it saves me some keystrokes. I needed
a Levenshtein Distance function the other day and it was decent - only
required a small tidy up. Only a few times have I been wondering what it's
thinking. Much better than the early days with ChatGPT.
One annoying thing since installing it is when dealing with long method
signatures, intellisense is no longer telling me which parameter I'm up to.
Probably something in the configuration somewhere for that.

I was listening to a PodCast about the future of Copilot, and I think it's
going to get far more interesting (useful) in the future.
They recognize that coding is a small minority of what we do. I know some
people say they spend 40% coding, but for myself it's probably closer to
10%.
What they're working towards (i.e. are currently dog-fooding themselves),
is being able to give it requirements. It will look through the code-base,
and create "slots" with suggestions on how it would implement it, which you
can accept/reject or change.
I'm currently working on a legacy ERP system with many years worth of
"bandaids" (most of which were well before my time). And understanding the
code-base takes more time than making the change itself. So this would
actually move the needle on overall productivity.

Nathan.


On Tue, 30 Jul 2024 at 13:57, Tony McGee via ozdotnet 
wrote:

>
> Copilot definitely isn't a magic 'do my job' button, and likely won't ever
> be, or that job would simply no longer exist.
>
> It does take care of a lot of the busy work though, and isn't just for
> Intellisense like code suggestions - you can happily converse with it in
> the chat window about high level topics and refine the context
> incrementally, generate boilerplate json/bicep/scripts from a few lines of
> prose, or highlight a non-trivial block of existing code and ask it to
> explain/summarise or find issues.
>
> While it's not HAL 9000 I reckon it comes pretty close, and quite
> importantly hasn't tried to murder me (yet).
>
> Before my trial I was skeptical about how much value it would provide, but
> was pleasantly surprised enough to hand over 15 dollarydoos each month. šŸ˜Ž
>
> cheers,
> Tony
>
> On 30/07/2024 08:06, Greg Keogh via ozdotnet wrote:
>
> When I first saw the movie *2001: A Space Odyssey* in 1969 I was
> fascinated by HAL (I was clearly destined to work in IT!), and now 55 years
> later I'd like to be able to sit down with HAL and explain some complex
> business requirement to him, converse like professionals and weigh-up the
> pros and cons of different platforms and languages based upon his world of
> experience and get him to code like a 1000x developer and generate a
> complete working skeleton of the required product. When will I see that?
> I'm a bit disappointed so far.
>
> Oh well, back to coding with my Copilot buddy.
>
> *Greg K*
>
>
> --
> ozdotnet mailing list
> To manage your subscription, access archives: https://codify.mailman3.com/
-- 
ozdotnet mailing list 
To manage your subscription, access archives: https://codify.mailman3.com/ 

Re: Blazor popularity and use

2023-09-08 Thread Nathan Schultz via ozdotnet
I've only used Blazor on pet projects, and have been happy with the results.
But our workplace is more back-end processing, and we use OutSystems to
quickly knock together back-office SPAs. And the business has been very
happy with that, so I don't see us moving to Blazor in the future.

"I've never met a living person who uses Flutter, or the Dart language for
that matter. It would be a brave decision to choose that as a development
platform for the future."

Ironically one of my C# devs is a moderator on the official Flutter Discord
server. Mobile apps is where Flutter really shines (and in the demos I've
seen and when I played around with it, it is quite impressive).
It came after Xamarin and it's clear that Google learned from Xamarin's
mistakes. As for Dart, they've borrowed a lot from C# so it doesn't have a
hugely steep learning curve. With a cheat-sheet you can get effective
fairly quickly.
But IMHO it's a niche language in an ecosystem and so it competes more with
Swift/Objective-C (although Google would not agree).
They've got some nice ideas, but it doesn't have any compelling reason to
move to it, and I don't see it being a safe bet for the future.

As for Javascript, people forget that it isn't a W3C standard. It was the
language of Netscape -> Mozilla foundation. And thus became the default
language in the browser.
Scott Koon famously said, "JavaScript won by default. People wanted to
build better web applications. Programming against Flash movies
sucked. Javascript was already in all the browsers. If you're the last man
left on earth, it doesn't matter how ugly you are when the women come to
re-populate the planet."
But because it was the Lingua Franca it's not going away, even though the
W3C opened the doors to everyone else with WebAssembly.

On Fri, 8 Sept 2023 at 11:13, Greg Keogh via ozdotnet 
wrote:

> If demand *for SSW* to use Blazor is overtaking JS, then I'd believe it.
> I saw the statement made.
>
> I've never met a living person who uses Flutter, or the Dart language for
> that matter. It would be a brave decision to choose that as a development
> platform for the future.
>
> Does MAUI generate browser hosted web apps? I didn't think it was made for
> that purpose, but maybe it does. I haven't looked yet.
>
> If you don't want to use a JavaScript framework, then Webassembly is the
> future. I see there is a proposal to take JavaScript out of the stack so
> that Wasm can talk directly to the browser DOM, which I think would be a
> great leap forward because the JS layer is an utterly useless link in the
> chain. Then we can finally consign JavaScript to the rubbish bin of history
> where it belongs.
>
> *GK*
>
> On Fri, 8 Sept 2023 at 12:47, Tony Wright via ozdotnet <
> ozdotnet@ozdotnet.com> wrote:
>
>> I agree. React demand is far higher than any other front end framework as
>> far as I can see. Angular ticks all the corporate governance boxes but it
>> is so unwieldy and requires so much boilerplate before getting to the
>> business logic it has really lost the war. Most of it comes down to
>> popularity. If something it discovered that it fast superior to everything
>> else, you usually see it rocket up the list. Blazor doesn't seem to be
>> doing that unfortunately. Vue should be more popular. NodeJs if you want a
>> pure JavaScript approach. But if you don't want a JavaScript framework what
>> choices do you have? .Net Maui? Flutter?
>>
>> On Fri, 8 Sep 2023, 12:31 pm DotNet Dude via ozdotnet, <
>> ozdotnet@ozdotnet.com> wrote:
>>
>>> I find it very hard to believe Blazor demand has overtaken JS. Thatā€™s an
>>> insane comment from Adam
>>>
>>> On Fri, 8 Sep 2023 at 12:05, Greg Keogh via ozdotnet <
>>> ozdotnet@ozdotnet.com> wrote:
>>>
 Is anyone here actively using Blazor on a decent sized project? I used
> it for a while on my last contract but am unable to find new work anywhere
> that uses Blazor, not a single one!


 Compared to server-side ASP.NET and JS Frameworks, Blazor is a gift
 from heaven .. well ... sort-of. Here's a Friday story.

 With the death of Silverlight, we had to replace an app with a quite
 rich UI with something else, what?! Like many people, I was spitting chips
 angry at the suggestion we must replace our Silverlight apps with HTML5
 apps. The idea that HTML+CSS+JS could replace a WPF-like rich web UI made
 me laugh and cry at the same time.

 Angular was really popular around 2018 so we got an offer to write a JS
 replacement for $200/hr. I then decided to learn Angular and watched 5
 hours of a 10 hour Angular course, at which point I gave up and said f**k
 that s**t. Now what?

 Luckily, Blazor 0.9 was in preview around this time. I spent a whole
 Sunday afternoon experimenting with Blazor. By the end of the day I had
 quite a sophisticated hobby app working with only a few hundred lines of
 coding, thanks to the familiarity of using VS, C# and Razor mark

Re: It's that time of year - F#

2022-06-28 Thread Nathan Schultz
As Alan J Perlis once wrote, "A language that doesn't affect the way you
think about programming, is not worth knowing."

For me it was F# that introduced me to functional concepts; which if
anything has made me a better C# programmer.
So it's the concepts and not the language that I'm taking with me;
especially since C# has been gradually adopting F# features.

Case-in-point; processors are approaching atomic limits in their die size.
And in order to improve performance CPU makers are simply adding more
cores. So even on mobile phones we're seeing 10 or more cores now. And I
felt the languages I've used in the past (up until now) haven't been the
best to get the most out of the hardware. And that's why I'm happy that C#
has been bringing in F# ideas. First was async / await. And now it is
bringing in immutability. So we can write pure functions and we don't have
to care which core they run on (or even which core on which machine in the
cloud) - because for the same input you always get the same output. We can
guarantee against race conditions.

We're seeing Source Generators - which hopefully in time I'm hoping will
get to Type Provider levels of power.

Record types mean creating ID types is easy (no reason a primary key should
be an Int or Long - as indeed a CustomerID shouldn't be comparable with an
OrderID, and you don't need to do mathematics on it). Although we still
don't have discriminated unions which would make C# a better candidate for
DDD. And really make impossible states impossible using the type system.

And after so many years C# is now actually getting pattern matching and
switch statements that are actually useful (although again, discriminated
unions would help here).

I still think F# is a nicer language for the world we're moving into (my F#
illiterate co-workers' jaws still drop when I demo pulling data from the
world bank and chart indicators in a few lines).
But C# is getting better with every release.

On Wed, 29 Jun 2022 at 09:36, Dr Greg Low via ozdotnet <
ozdotnet@ozdotnet.com> wrote:

> In fact, the messaging changed fairly abruptly.
>
>
>
> Compare Kathleenā€™s article in Nov 2018:
> https://devblogs.microsoft.com/vbteam/visual-basic-in-net-core-3-0/
>
>
>
> With the one 15 months later:
> https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/
>
>
>
> Regards,
>
>
>
> Greg
>
>
>
> Dr Greg Low
>
>
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobile
>
> SQL Down Under | Web: https://sqldownunder.com | About Greg:
> https://about.me/greg.low
>
>
>
> *From:* Greg Keogh 
> *Sent:* Wednesday, 29 June 2022 11:21 AM
> *To:* ozDotNet 
> *Cc:* David Burstin ; David Kean <
> david.k...@microsoft.com>; Dr Greg Low 
> *Subject:* Re: It's that time of year - F#
>
>
>
> Mind you, there have been many interesting languages over the years. And
> their fate has not always seemed logical.
>
>
>
> I think a year ago I said something like ... I was excited about F# when
> it first came out, but never got to write any production software using it.
> Whenever I sat down to write something serious I got bogged down in choices
> and syntax details and "bridging" over to other C# libraries to do the
> heavy lifting. There were lots of other irritations like long searches for
> good samples, less tooling, less (and bewildering) documentation, smaller
> community, lack of T4 templates, etc. If I were writing lots of algorithmic
> code then F# would be a superior choice and all the "bridging" would be
> pushed to the edges, but lots of typical LOB coding is best done in C#.
>
>
>
> C# has evolved so far now that it must be the best hybrid language in
> popular use by a long shot, and its functional features are deflating F#'s
> functional fame. The downside is that C# is accumulating so many features
> that I can't remember them all, so I'm thankful when Visual Studio light
> bulbs appear and remind me to replace my force-of-habit clumsy code. I hope
> they ease off on new C# features in the future, I don't want it to turn
> into C++ 20/23 or PL/I  (the language
> that was going to solve every problem in the world).
>
>
>
> Cheers, *Greg K*
>
>
>
> P.S. What happened to VB.NET? No sarcasm, it just seems to have dropped
> out of articles and announcements.
> --
> ozdotnet mailing list
> To manage your subscription, access archives: https://codify.mailman3.com/


Re: F#

2021-08-09 Thread Nathan Schultz
I think the closest you will get in Melbourne is "Culture Amp". They use
Elm (which is basically F# for the web).

Huge fan of F# myself... but not used in production, and I'm not in Melb's,
sorry.
Like Greg, I concur; C# is gradually adopting F# features so that F# just
isn't as big a step up as it used to be anymore. I've sort of settled back
down into the C# world using functional ideas where they improve clarity.
Although I'm still wondering if discriminated unions will ever be a thing
(type system in C# isn't useful for domain modelling). And a pipe operator
would be handy without the need to [ab]use extension methods.

Nathan

On Thu, 5 Aug 2021 at 10:02, David Burstin  wrote:

> Hi all,
>
> Does anyone know of anywhere in Melbourne that is doing any F# work? I've
> been playing with F# for a few months now and really loving the language,
> so I was interested to know if it is being used "in the wild".
>
> Cheers
> Dave
>


Re: Automated tests

2021-06-20 Thread Nathan Schultz
Selenium is still the primary tool of choice for most. My company uses Sahi
Pro - and the testers seem to like it.
For my personal use (and if you need something lighter), I don't mind
Playwright. It's more straightforward to script and it's better at
detecting when a page has been fully rendered.
After the recent .Net Rocks episode with Simon Cropp (another Aussie) I've
been giving Verify a spin. So far I have been very impressed by it.

On Fri, 4 Jun 2021 at 18:49, harris.greg.m  wrote:

> I did some selenium work a 6/7 years ago and it was a pain only supporting
> selective versions of firefox, just did some work with it again for web
> scraping and it just feels a lot more complete and working well with chrome
>
>
>
> Sent on the go with Vodafone
>
>
>  Original message 
> From: djones147 
> Date: 4/6/21 20:14 (GMT+10:00)
> To: ozDotNet 
> Subject: RE: Automated tests
>
> Hey
>
> The last time I did web testing ws using mstest v2 and selenium Web
> drivers. All from a separate test project to the unit tests. Example below.
>
>
> https://www.lambdatest.com/blog/most-complete-mstest-framework-tutorial-using-net-core-2/
>
>
> Hth
>
> D.
>
> Sent from my Galaxy
>
>
>  Original message 
> From: Tom Rutter 
> Date: 04/06/2021 06:43 (GMT+01:00)
> To: ozDotNet 
> Subject: Automated tests
>
> Hi folks,
>
> It's been several years since I looked at automated tests for web apps. Is
> Selenium still the go to tool? I dabbled with it years ago but never really
> gave it a good hit. Are there any automation testers here that care to
> share their tools and thoughts?
>
> -- Tom
>


Re: [OT] Employer wants photo of passport

2020-09-11 Thread Nathan Schultz
Yes, we use CV Check as the 3rd party. Not sure what they do or do not
store - HR is not my area of expertise.

On Fri, 11 Sep 2020 at 14:47, DotNet Dude  wrote:

> Normally you would use a trusted middle man such as PharmacyID or WorkPro
> for police checks. I prefer and use PharmacyID as they store minimal info
> and none of your documents.
>
>
> On Fri, 11 Sep 2020 at 15:26, Nathan Schultz  wrote:
>
>> Had to hire a new member onto our team recently, and HR needed 100 points
>> of ID (which could include a passport).
>> We need it because we require a police check (we're a financial firm and
>> fraud is an ongoing concern).
>>
>> On Fri, 21 Aug 2020 at 10:43, Greg Harris 
>> wrote:
>>
>>> Some years ago, the HR dept wanted a new hire to provide his passport to
>>> prove he had the right visa to work here.
>>> He was OK as a contractor, but when we offered him a perm role, they
>>> wanted more.
>>> That was easy, he just brought in the passport and went up to see them.
>>> I would scan the passport title page and the Oz visa page, share on
>>> dropbox or whatever and send a text message with the link.
>>> OT OT
>>> Interesting that it was only one of my new hires they asked that of, but
>>> he was the clearly overseas one.
>>>
>>> On Fri, Aug 21, 2020 at 12:28 PM Craig vN  wrote:
>>>
>>>> My wife yesterday had our insurance company randomly call asking to
>>>> change details. Told them there is no way she is giving them info to some
>>>> random call with no heads up.
>>>>
>>>> On Fri, Aug 21, 2020 at 7:44 AM Tony Wright  wrote:
>>>>
>>>>> It's a tough one. I had an argument with a loan company who called me
>>>>> and asked me to verify with them so they could access my account details. 
>>>>> I
>>>>> said no way, because they called me. They argued with me, patronised me,
>>>>> and wore me down. I said the previous time they called me they let me call
>>>>> them back through switch, but he said that's up to the discretion of the
>>>>> rep. I was so pissed off. I still am. That reminds me to write a 
>>>>> complaint.
>>>>> Sorry, off topic on the OT.
>>>>>
>>>>> On Thu, 20 Aug 2020, 9:10 pm Tom P,  wrote:
>>>>>
>>>>>> Hi folks
>>>>>>
>>>>>> Iā€™ve been verbally offered a contracting role by a recruiter and the
>>>>>> employer has requested a photo of my passport via email. I do not feel
>>>>>> comfortable sending this for a few reasons, email is not secure, who 
>>>>>> knows
>>>>>> what they will do with the photo like forwarding it, etc.
>>>>>>
>>>>>> How do you all handle this as Iā€™m sure youā€™ve been in similar
>>>>>> situations?
>>>>>>
>>>>>> Cheers
>>>>>> --
>>>>>> Thanks
>>>>>> Tom
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>


Re: [OT] Employer wants photo of passport

2020-09-10 Thread Nathan Schultz
Had to hire a new member onto our team recently, and HR needed 100 points
of ID (which could include a passport).
We need it because we require a police check (we're a financial firm and
fraud is an ongoing concern).

On Fri, 21 Aug 2020 at 10:43, Greg Harris 
wrote:

> Some years ago, the HR dept wanted a new hire to provide his passport to
> prove he had the right visa to work here.
> He was OK as a contractor, but when we offered him a perm role, they
> wanted more.
> That was easy, he just brought in the passport and went up to see them.
> I would scan the passport title page and the Oz visa page, share on
> dropbox or whatever and send a text message with the link.
> OT OT
> Interesting that it was only one of my new hires they asked that of, but
> he was the clearly overseas one.
>
> On Fri, Aug 21, 2020 at 12:28 PM Craig vN  wrote:
>
>> My wife yesterday had our insurance company randomly call asking to
>> change details. Told them there is no way she is giving them info to some
>> random call with no heads up.
>>
>> On Fri, Aug 21, 2020 at 7:44 AM Tony Wright  wrote:
>>
>>> It's a tough one. I had an argument with a loan company who called me
>>> and asked me to verify with them so they could access my account details. I
>>> said no way, because they called me. They argued with me, patronised me,
>>> and wore me down. I said the previous time they called me they let me call
>>> them back through switch, but he said that's up to the discretion of the
>>> rep. I was so pissed off. I still am. That reminds me to write a complaint.
>>> Sorry, off topic on the OT.
>>>
>>> On Thu, 20 Aug 2020, 9:10 pm Tom P,  wrote:
>>>
 Hi folks

 Iā€™ve been verbally offered a contracting role by a recruiter and the
 employer has requested a photo of my passport via email. I do not feel
 comfortable sending this for a few reasons, email is not secure, who knows
 what they will do with the photo like forwarding it, etc.

 How do you all handle this as Iā€™m sure youā€™ve been in similar
 situations?

 Cheers
 --
 Thanks
 Tom

>>>


Re: OT: Robo Vacs

2020-01-22 Thread Nathan Schultz
I had a Roomba for a number of years. While it's true it won't do as
thorough job as a manual vacuum cleaner on a single run, since I could run
it every day my floor was just as clean.

Works very well on wooden, tiles and vinyl floors - but not so well on
thick-pile carpets and rugs. It also can't do a good job around a forest of
table and chair legs - so occasionally you'll have to move the furniture so
it can do a better job (as if you were doing it manually). I set up my
docking station under a couch - so you never knew it was there until it
came charging out to do its run (set to go when I was at work).

Now I've got kids, there's constant floor clutter from toys and the like
which need to be cleaned up - so I no longer find it practical.

On Tue, 21 Jan 2020 at 09:04, Dan Cash  wrote:

> I bought a Mint 4200 a few years back ... very basic, just pushes a pad
> around, dust and hair accumulate at the front of the pad (static?) and
> returns to it's spot when finished.
> 'Navigation beacons' I ran it once a week, or whenever wife was out
> ...crowded house, I'd pick up chairs and kids stuff from the floors, set it
> up and go read a book.
> Lower profile than the Roomba, and great for Wooden floors, was good
> picking up dust and hair after three girls.   My wife complained it that it
> dropped dust in the corners, but I didn't see the issue.
>
> Mint were acquired by Roomba a few years back; newer versions have better
> room partitioning and longer battery.
> I've replaced the battery, and repaired the slipping wheel tracks, still
> works OK in my new place (smaller, and less hair :) ).
>
> On Tue, 21 Jan 2020 at 06:01, DotNet Dude  wrote:
>
>> I found it depends on your floors and what your idea of clean is. Forget
>> carpet. Tiles and timber floors they are ok, just ok. Not worth the money
>> imo. You can sweep (those material heads, I forget the name) and do an
>> equivalent if not better job in a few mins on hard floors.
>>
>> On Mon, 20 Jan 2020 at 21:50, David Connors  wrote:
>>
>>> Hi All,
>>>
>>> Very off topic but what success has anyone had here with robo vacs?
>>>
>>> Our 11 month old German Shepherd is blowing her coat and the place is
>>> dog hair central hence the question.
>>>
>>> I know a few people who have had them but they've died after a few
>>> months etc. The better ones that can self empty etc seem to be around the
>>> $1500 mark - which gets up there in price as we have two floors and they
>>> haven't invented one that climbs stairs yet. :)
>>>
>>> David Connors
>>> da...@connors.com | M +61 417 189 363
>>> Telegram: https://t.me/davidconnors
>>> LinkedIn: http://au.linkedin.com/in/davidjohnconnors
>>>
>>>
>
> --
> Dan Cash
> -m. 0411 468 779
> -e. dan.c...@gmail.com
>
> F.A.B. Information Systems Pty Ltd   ABN 16 084 146 261
>
>


Re: JSON deserialize

2019-07-23 Thread Nathan Schultz
For those that are looking at moving forward with .Net Core, it's worth
noting that NewtonSoft Json.NET will NOT be installed by default as of .Net
Core 3.0:
https://github.com/dotnet/announcements/issues/90


Rather, there's a new System.Text.Json serializer that's about 20% faster
than Json.NET (but isn't as feature rich). You can always switch back to
Json.Net by installing it via NUGET if you need these features.
https://devblogs.microsoft.com/aspnet/asp-net-core-updates-in-net-core-3-0-preview-5/


On Mon, 22 Jul 2019 at 13:47, Tom P  wrote:

> Thanks guys. I ended up
> using System.Web.Script.Serialization.JavaScriptSerializer to deserialize
> to a dictionary.
>
> Thanks
> Tom
>
>
> On Thu, 18 Jul 2019 at 15:36, djones147  wrote:
>
>> It's an array of array of strings.
>>
>> But I would just cast it to dynamic. And use it that way
>>
>> dynamic obj = deseriize
>>
>> Console.write(obj[0].id)
>>
>> Hth
>>
>> Davy
>>
>>
>>
>> Sent from my Samsung Galaxy smartphone.
>>
>>  Original message 
>> From: Tom P 
>> Date: 18/07/2019 01:19 (GMT+01:00)
>> To: ozDotNet 
>> Subject: JSON deserialize
>>
>> Hi all
>>
>> Noob question here as it seems my brain is not working at all.
>>
>> I have json like this:
>>
>> {
>>   ā€œSome GUIDā€: {
>> ā€œIdā€: ā€œSome GUIDā€,
>> ā€œProperty1ā€: ā€œabcā€,
>> ā€œProperty2ā€: 123.45,
>> ā€œProperty3ā€: false
>>   },
>>   ā€œAnother GUIDā€: {
>> ā€œIdā€: ā€œAnother GUIDā€,
>> ā€œProperty1ā€: ā€œdefā€,
>> ā€œProperty2ā€: 456.10,
>> ā€œProperty3ā€: true
>>   }
>> }
>>
>> I canā€™t seem to work out how to deserialize this with Json.NET. Any hints
>> to trigger my brain to wake up? Quite embarrassing.
>>
>> Thanks
>> Tom
>> --
>> Thanks
>> Tom
>>
>


Re: .NET Core or .NET Framework

2019-06-03 Thread Nathan Schultz
Given that .Net Framework 4.8 is the last version of the .Net Framework (
https://devblogs.microsoft.com/dotnet/net-core-is-the-future-of-net/ ) it
makes sense to transition to .Net Core (if possible).

It's worth noting that there will NOT be a .Net Core 4 (to prevent
confusion with the .Net Framework). Rather the next .Net version will be
.Net 5 (based on Core):
https://devblogs.microsoft.com/dotnet/introducing-net-5/


On Sun, 2 Jun 2019 at 17:37, DotNet Dude  wrote:

> From Microsoft -
> https://docs.microsoft.com/en-us/dotnet/standard/choosing-core-framework-server
>
> On Fri, May 31, 2019 at 6:59 PM Tom Rutter  wrote:
>
>> Hi folks
>>
>> In what situations would one would choose .net framework over .net core
>> for building a new desktop application? We can wait for .net core 3 if that
>> is a decider.
>>
>> Cheers
>> Tom
>>
>


Re: [OT] SQL Server DB designed for reporting

2019-01-31 Thread Nathan Schultz
+1 to Tony's answer. Using SSIS (integration services) to export to a
reporting database or data warehouse.
>From there you can use Power BI (for Dashboards) or something like SSRS
(SQL Server Reporting Services) for traditional print invoices and things.

It's only if you were building a green-fields application that you'd look
into CQRS - it's not something practical for your existing line of business
apps.


On Fri, 1 Feb 2019 at 07:55, Tony McGee  wrote:

> One way to do this is to have a regular job that uses SQL Server
> Integration Services package(s) to extract data from the source system,
> transform it, cleanse, etc then load it into a destination database (ETL)
>
> Often, but not always, the destination database has a star schema with
> fact and dimension tables, that a data warehouse can be built upon. Tools
> like SQL Server Analysis Services or Excel/Power BI can understand and
> slice the data for the user interface
>
> For large volumes of data there's usually an initial load, then subsequent
> runs capture any changed data from the source system and load it
> incrementally
>
>
> On Fri, 1 Feb 2019, 08:27 Tom P 
>> Hi Folks
>>
>> I have a normalised database for an application that is working well but
>> is not performant for reporting. Iā€™ve tried and tried to optimise my
>> reporting queries but they are just too slow as the data volume is large in
>> the database. What techniques are there to tackle this?
>>
>> I was thinking of creating denormalised tables for the reports which
>> would work but how to automate this so that whenever the main normalised
>> tables are updated then the changes ā€œflow intoā€ the denormalised reporting
>> tables and stay in synch?
>>
>> Iā€™m sure this is not a new problem so surely some of the people here have
>> been in this situation. Any advice would be appreciated.
>>
>> Cheer
>> Tom
>> --
>> Thanks
>> Tom
>>
>


Re: [OT] C++ language war

2019-01-17 Thread Nathan Schultz
Certainly parsing large text files into structured data is easy in F# (with
libraries like FParsec). And tail-recursion is a blessing for this.
But my money would be on well-written C++ to be faster - it's simply a
lower level language. But it depends how "well written" it is.
As a whole I also find .Net Core faster than .Net Framework.

But if milliseconds count I'd be looking at languages like Go or Rust
(which are new enough to work well with modern standards).

On Fri, 18 Jan 2019 at 14:43, Greg Keogh  wrote:

>
>
>> https://stackoverflow.com/questions/1324919/what-language-is-net-framework-written-in
>>
>
> That's interesting, but it's a separate issue. My colleague claims that
> you would always chose to write an app in C++ for better performance in
> computationally intensive work. I counter-claim this is no longer generally
> true. I suspect that JIT'd managed code would have acceptably close
> performance to the native equivalent.
>
> I saw a YouTube video a few months ago (I can' find it now) where a lady
> spruiking F# told of a developer boffin she knew who took a massive
> financial application written with millions of lines of C++ and rewrote it
> in F# with a fraction of the lines of code, and it was easier to maintain
> and it performed much better. I feel she was indirectly pointing out that
> the game has changed regarding our old biases about languages, platforms
> and performance.
>
> *GK*
>
>>


Re: [OT] Java threatened?

2018-08-01 Thread Nathan Schultz
When it comes to mobile development, having two or more code-bases is
extremely costly. So it's unsurprising that many businesses are considering
their options right now.

I do see Dart (via Flutter) and Kotlin in competition. Dart is instantly
familiar to a C# developer and backed by Google. So personally I'm
predicting Dart / Flutter to do really well. I'd put Kotlin as the
dark-horse at this stage.
There are other options too - such as Haxe - but I just don't see it
getting the commercial backing.


On Tue, 31 Jul 2018 at 18:13, David Connors  wrote:

> Should have said "I know the tldr" not "I don't the tldr"
>
> On Tue., 31 Jul. 2018, 8:12 pm David Connors,  wrote:
>
>>
>>
>> On Tue., 31 Jul. 2018, 5:58 pm Nick Randolph, 
>> wrote:
>>
>>> Android might well be the most widely adopted OS on Earth but
>>> https://medium.com/@drinfo/fuck-you-android-framework-ddbb02c4ae48
>>>
>> That guy is clearly pretty unhappy/unhinged. I don't the tldr of this
>> list is that it is developer focused but as a user though it is pretty hard
>> to argue with what a vanilla Android device like a pixel is like to use.
>>
>>> w.r.t. Kotlin ā€“ as an app developer I would skip it (mostly) and focus
>>> on Flutter. I say mostly because for the platform specific components,
>>> youā€™ll need to know it. For anyone interested in Sydney there is a meetup
>>> next Tuesday (https://www.meetup.com/gdgsydney/events/252175587/).
>>>
>> They're not the same thing. Flutter is a cross platform app framework and
>> kotlin is a language to augment/interop with/replace Java.
>>
>> In general, my view on cross platform is that it is a race to a lowest
>> common denominator of sorts.
>>
>> If I had to write an app and I had all the monies I would go native every
>> time. If I didn't have all the monies I would use something cross platform.
>> I struggle to understand why companies like Facebook stuff about with cross
>> platform frameworks for apps when they have unlimited money and relatively
>> simple apps to write.
>>
>> David
>>
>>
>> --
>> David Connors
>> da...@connors.com | @davidconnors | https://t.me/davidconnors | LinkedIn
>>  | +61 417 189 363
>>
> --
> David Connors
> da...@connors.com | @davidconnors | https://t.me/davidconnors | LinkedIn
>  | +61 417 189 363
>


Re: Azure static websites

2018-07-19 Thread Nathan Schultz
@Greg, I've not trialled creating a web-site from a storage account yet.
But you might be able to stand-up Azure Function Proxies to create the
distinct web-sites you're after.

On Thu, 19 Jul 2018 at 07:22, Greg Keogh  wrote:

> Folks, I was surprised to find that one storage account == one static
> website by creating one special $web container. I was sort of expecting
> that containers could be published as distinct websites. So to publish 4
> static web sites I have to create 4 storage accounts, which is a nuisance.
>
> I thought I could squeeze multiple sites into one $web container by using
> pseudo-folders, like this:
>
> https://foobar.z26.web.core.windows.net/site1
> https://foobar.z26.web.core.windows.net/site2
> --etc--
>
> However, if you upload complete static websites into these folders then
> the relative links to css files and other pages break. Simple relative
> links like href="page2.htm" seem to jump up a level to the root and you get
> 404. Same for links to css files. So there's some mixup about where
> "relative" links point to from inside a folder. Damn nuisance.
>
> *Greg K*
>


Re: Thoughts on Web Assembly and Blazer

2018-05-23 Thread Nathan Schultz
Although Ooui is unorthodox, it's already reached a stage of early maturity
and it's captured the attention of Scott Hanselmen other prominent guys in
Microsoft. Although you're right - you'd be hard pushed to recommend it for
production (mind you the same can be said for JavaScript, lol).

Here's an online XAML editor written in it:
http://ooui.mecha.parts/Samples/Run/Xamarin.Forms%20XAML%20Editor
And your typical TODO appication:
http://ooui.mecha.parts/Samples/Run/Todo%20List

I've said it previously on a different thread - I use OutSystems which is
like the VB6 for web / native mobile apps. Free for personal use - but it's
not cheap for commercial use. I was once part of a team building
large-scale software for the Navy in it - it's pretty capable.
You can get away without knowing any HTML / CSS at all - except around
certain edge cases.

If you're just trying to avoid Javascript - that's pretty easy - there are
plenty of transpilers around - some of which are excellent for large apps
in production. My picks are Dart (which Google uses very heavily, and is
very similar language to C#). It also has an interesting native mobile
application story with Flutter. And if you like function languages, I've
used Elm in production for small non-critical things - unlike JavaScript,
Elm is very stable - almost bullet-proof. And although I've not used it
myself, F#'s Fable is also capable. But you still need to know HTML+CSS for
these options; even though these languages may abstract it away, you still
need to know it to diagnose when things go wrong.


On 24 May 2018 at 11:38, Greg Keogh  wrote:

> Blazor is wed to HTML / CSS - because it's very name is derived from
>> "Browser + Razor".
>>
>
> Oh Jeezus we're f***ed.
>
>
>> ā€¦ Never-the-less, it might be something to look at if you hate the
>> HTML/CSS/JS cartel.
>>
>
> Too unorthodox, we're all trapped in cartel hell.
>
> *GK*
>
>>


Re: Thoughts on Web Assembly and Blazer

2018-05-23 Thread Nathan Schultz
Blazor is wed to HTML / CSS - because it's very name is derived from
"Browser + Razor".

However, Frank Kreuger has released a project called Ooui (short for Object
Orientated User Interface), which allows you to use XAML / Xamarin Forms on
the browser over Blazor.
https://github.com/praeclarum/Ooui/

Even today you can avoid HTML/CSS by using Xamarin.Forms with ASP.NET Core.
The way he does this is by an unorthodox method of having a small front-end
component which opens up a socket connection from the server. Changes on
the server's model are automatically propagated to the browser. Quite
innovative smoke and mirrors when you think about it. But you can already
imagine the constraints with the this approach (e.g. no off-line
capability). Never-the-less, it might be something to look at if you hate
the HTML/CSS/JS cartel.



On 24 May 2018 at 10:57, Greg Keogh  wrote:

> Steve Sanderson has a blog post on blazor that provides you with insight
>> into their current thinking. Blazor: a technical introduction
>>
>
> One aspect of this still has me quaking in fear ā€¦ is it all hosted inside
> a browser, and is the UI written in HTML and CSS?
>
> If so, then we've still got one crippled foot in the stinking old sewage
> of browsers and HTML. In Silverlight you could create a "real" robust and
> rich UI by defining it in XAML that was completely independent of HTML. The
> WebAssembly and Blazor docs I've read so far (not a great amount) don't
> discuss plans for the UI clearly. They talk about Razor and tags with
> special syntax, so I assume your WebAssembly application will interact with
> the browser DOM using special markup. If so, Lord help us!
>
> I'm praying for the day when I can write "web apps" (even the name is
> archaic) using a real language with a real compiler in a real IDE to
> produce a real UI with real performance and real reliability.
>
> One day we'll look back and laugh about the old days when they thought
> JavaScript would lead us all into a brighter future.
>
> *Greg (K)*
>


Re: Deja vu, somewhat

2018-01-15 Thread Nathan Schultz
Over the Christmas break I was catching up on .Net Rocks episodes, which
mentions DotVVM (https://www.dotvvm.com/).
It looks like an easy way for a .net programmer to create SPA's without
having to delving into the world of Javascript Frameworks and Tools.
I'm not sure how good it is; but it might be worth playing with if you
don't want to go down the JS rabbit-hole.

On 16 January 2018 at 08:34, kirsten greed  wrote:

> I have been using https://glitch.com/learn-to-code to lower the barrier
> to hello world.
>
> On Mon, Jan 15, 2018 at 11:57 AM, Greg Keogh  wrote:
>
>> Mike, are you having dƩjƠ vu again?
>>
>> I'm planning to write a blog post (when I get spare time) on what I
>> discovered during recent research into writing a new browser app as an SPA,
>> probably using Angular. There were two stunning revelations that shocked me
>> so much that I feel confident to report them now.
>>
>> *1. The "library" codebase*
>>
>> I did mention this months ago, but it's worth repeating. I generated two
>> "hello world" Angular projects using different commands, and each contained
>> ~1.2 millions lines of JavaScript in ~20,000 files. For me this was a
>> jaw-dropping shock, hinting that something's rotten on the starting blocks.
>>
>> *2. Complexity vs results*
>>
>> I watched 5 hours of a 10 hour long Pluralsight Angular course. How can a
>> JavaScript course be that long? Now I know... conventions, components,
>> templates, services, navigation, forms, validation, pipes, DI, observables,
>> and so on. After 5 hours I realised something was rotting again. I stopped
>> and realised that Angular is a monstrously over-engineered, overly complex
>> behemoth which looks like some IT science student's graduation project. And
>> just what is this beast for ... to write a friggin' app in a browser. Sure
>> you can, but it's like building a palace out of sticky tape and matchsticks.
>>
>> So after all my research, I was expecting to find something alluring
>> about JS development, but it's left me more shocked than before. I'm even
>> disappointed by my disappointment!
>>
>> As an experiment, I used ASP.NET Web Forms with Bootstrap styles to
>> write the basic demo app that we were planning to have done in Angular. It
>> was completely working in 2 hours, and the boss likes it so much he's
>> actually considering showing it to customers. The resulting project is
>> familiar, simple, well-behaved, based on robust frameworks, and it only has
>> about 25 files in the whole solution. I think there's a lesson in that.
>>
>> *Greg K*
>>
>
>


Re: Creating a browser-based product

2017-11-28 Thread Nathan Schultz
As a .Net programmer, if you detest Javascript (as I do), you can also use
F# and Fable to write single page web-applications. It won't save you from
the vagaries of HTML and CSS though - you still need to know this.
I personally use Elm (which is similar to F# + Fable) - but it's far more
bullet-proof (run-time errors are exceptionally rare), although you're no
longer in the Microsoft eco-system (for better or worse).

If you're writing web-applications for a company though, I still think
Angular or React is the easier sell to management; yes it's more complex,
more clunky, and will take longer to write - but at least finding other
Angular or React resources is fairly trivial.

On 29 November 2017 at 13:53, Greg Keogh  wrote:

> I strongly recommend this course: https://app.pluralsigh
>> t.com/library/courses/angular-fundamentals/table-of-contents
>>
>
> Thanks, I've watched about an hour so far. They seem to use a more
> *classic* approach with a simpler project structure, and they use VS Code
> instead of Studio so there's no projects and solutions.
>
> The amount of unusual markup required to plumb all the parts together is
> really irritating. This is a very complex infrastructure just to render an
> app browser-side. I blame the JavaScript language for this as it lacks
> everything one would expect in a modern robust language ecosystem.
> Everything looks like a hack, workaround or add-on just to hoist the whole
> vast slogging mess up to make it work. I'm still not impressed.
>
> *Greg*
>


Re: Creating a browser-based product

2017-11-20 Thread Nathan Schultz
My company uses OutSystems for web-development. It isn't cheap - but it's
very fast to develop, good quality and effective.

On 21 November 2017 at 07:34, Greg Low  wrote:

> I look at how far weā€™ve come in the last twenty-plus years and in terms of
> application development productivity, youā€™d have to wonder what weā€™ve all
> been smoking.
>
>
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com] *On Behalf Of *Greg Keogh
> *Sent:* Tuesday, 21 November 2017 9:17 AM
> *To:* ozDotNet 
> *Subject:* Re: Creating a browser-based product
>
>
>
> After the cluster fail that has been Javascript and Silverlight...
>
> I am NOT optimistic that anything will change in a positive way real soon.
>
>
>
> If you step way back and look at the last 25 years of the web, it's clear
> that the web browser should never have been used to run apps.
>
>
>
> First we had html in the dumb browser, which was only good for looking at
> cats and porn.
>
>
>
> Then someone decided to spice the browser experience up by knocking-up a
> script language without any proper research, design, conventions or
> consideration of the future.
>
>
>
> Then someone finally decided it was wise to pull the styling out of the
> markup to give us css.
>
>
>
> Then they made valiant attempts to run "real" apps inside the browser with
> Java applets, Flash and Silverlight. They all died for various reasons.
>
>
>
> Then we went back to using html, css and that stupid scripting language in
> an attempt to write useful apps. The browser, the rendering, the layout and
> the language all don't interoperate properly and there are no standards for
> developers to follow. This results in every bored academic and hobbyist
> writing their own framework.
>
>
>
> And here we are well into the 21st century with no robust way of creating
> an app in a web browser.
>
>
>
> *GK*
>


Re: Unit testing question and stored procedures

2017-04-25 Thread Nathan Schultz
If performance is essential, then I agree that stored procedures are going
to win, but in my experience it is not without major trade-offs.

I once worked on a large business critical project where all business logic
was in stored procedures, due to the reasons you have addressed above.

Some of the problems we faced were:
- It was a while ago, and the database was Ingres. Ingres was expensive,
but the difficulty (and so cost) in migrating to SQL Server meant it was
not economical for the business to migrate. This trapped the business into
paying a fortune on licensing.
- While the application indeed was performant, it quickly reached the
limits of scalability under heavy use (as it became more and more costly to
scale the data tier). The company ended up paying a huge sum at the time
for a beast of a server to host the database to get it to cope with demand
during the heaviest periods. Meanwhile, scaling the middle-tier would not
have been a problem, and it would have taken a fair bit of burden off the
data-tier.
- Business logic in stored procedures meant large atomic transactions, and
under heavy load this meant that deadlocks were common (although I'd admit
that this is more of a problem with how the stored procedures were
implemented, rather than their actual use).
- Back in those days, web-services were just becoming popular, and when
your business logic is in the data-tier, we found it to be a real headache
to ensure data integrity when integrating web-services and other data
sources.

So I still see real wisdom in the industries practice of putting business
logic in the middle-tier.

Especially in today's world where web-services and alternate sources of
data are the norm, and the quantity of data now being processed has forced
the consideration away from relational databases, and to consider more
scalable / cloud alternatives, such as No SQL databases, and Event Sourcing.

Still, relational databases are the best fit in most cases, but I tend to
use light-weight performant ORMs such as PetaPoco - so database calls are
still written in SQL (and can be properly optimised by a competent DBA),
but I don't have to worry about mapping while being quite performant. And
you can always fall back to hand-written ADO.NET and a hand-written mapper
for absolute best performance (although I've not found I've needed to).

For Unit Testing, I either 'inject' the data-layer (so it can be faked, or
I use an in-memory database), or using a file-based database (so it can be
easily re-set).

On 26 April 2017 at 13:42, Greg Keogh  wrote:

> I'm one of those ummm ... purists who reckons you shouldn't put anything
> (like business logic) in procs that needs unit testing -- *GK*
>
> On 26 April 2017 at 15:36, Greg Low (ē½—ę ¼é›·ę ¼åšå£«)  wrote:
>
>> Yep, thatā€™s how we do it. Some people use transactions to do a similar
>> thing but you canā€™t test transactional code by doing that.
>>
>>
>>
>> Regards,
>>
>>
>>
>> Greg
>>
>>
>>
>> Dr Greg Low
>>
>>
>>
>> 1300SQLSQL (1300 775 775) office | +61 419201410 <+61%20419%20201%20410>
>> mobileā”‚ +61 3 8676 4913 <+61%203%208676%204913> fax
>>
>> SQL Down Under | Web: www.sqldownunder.com |http://greglow.me
>>
>>
>>
>> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@ozdot
>> net.com] *On Behalf Of *Tony Wright
>> *Sent:* Wednesday, 26 April 2017 3:08 PM
>> *To:* ozDotNet 
>> *Subject:* Re: Unit testing question and stored procedures
>>
>>
>>
>> So let me understand this. I believe what you are doing is having a
>> database snapshot (or testing database) that you can continuously revert to
>> its initial state, then you run the stored proc via nunit, then in the init
>> for the next test, revert back to the initial state and run that test,
>> etc.  I would have thought that it would take a lot of extra processing
>> time to run tests that way, especially if a restore is needed?
>>
>>
>>
>> I've used in memory databases (via the database first philosophy of EF
>> entity creation) but they don't handle stored procs.
>>
>>
>>
>> TSQLUnit looks...interesting. Must investigate.
>>
>>
>>
>> On Wed, Apr 26, 2017 at 12:48 PM, Greg Low (ē½—ę ¼é›·ę ¼åšå£«) 
>> wrote:
>>
>> I should have added that the dac framework stuff had testing but has now
>> removed it.
>>
>>
>>
>> Some use TSQLUnit but Iā€™ve not found it any more useful and NUnit fits
>> well with other testing.
>>
>>
>>
>> Regards,
>>
>>
>>
>> Greg
>>
>>
>>
>> Dr Greg Low
>>
>>
>>
>> 1300SQLSQL (1300 775 775) office | +61 419201410 <+61%20419%20201%20410>
>> mobileā”‚ +61 3 8676 4913 <+61%203%208676%204913> fax
>>
>> SQL Down Under | Web: www.sqldownunder.com |http://greglow.me
>>
>>
>>
>> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@ozdot
>> net.com] *On Behalf Of *Tony Wright
>> *Sent:* Wednesday, 26 April 2017 11:53 AM
>> *To:* ozDotNet 
>> *Subject:* Unit testing question and stored procedures
>>
>>
>>
>> Hi all,
>>
>>
>>
>> A while ago, we were discussing avoiding using LINQ to query sql server.
>> The preferred method of q

Re: SPA decision

2017-04-05 Thread Nathan Schultz
Yep... to expand on what Tony has said, LESS & SASS are CSS pre-processors.

They add features not normally found in CSS, such as variables,
calculations, polymorphism (via mix-ins), import and extend constructs, and
far better nesting.
When LESS or SASS files are compiled into ordinary .css.

They're handy for any large web-application (Web-Forms, MVC, SPA, or
otherwise), and can make your CSS less of a nightmare.
For example, want to change your entire colour scheme? Just define your
colours as variables, and you only need to change them in one place.

On 6 April 2017 at 11:56, Tony Wright  wrote:

> Less is nothing to do with JavaScript and you can use it with standard
> mvc. All it does is provide you with a better css file that allows you to
> use variables within a css-like file that should generate the css on saving
> it.
>
> On 6 Apr 2017 10:34 AM, "Greg Keogh"  wrote:
>
>> The SPA site is, a youg devloppers wet dream of technologies, Gulp, Less,
>>> you name it it's in there.  The code is buggy and never does what you
>>> expect it to do.
>>>
>>
>> You have decorated part of my reason for not going SPA for the new demo.
>> In my reading of blogs and forums I've seen a lot of chatter complaining
>> about this sort of thing.
>>
>>
>>> This morning, I'm trying to figure out why the Less styles don't output
>>> the correct css on my machine but on the build server everything is working
>>> fine.
>>>
>>
>> Wry ha! Less ... a thing based upon an old thing an dinfluenced by
>> another thing, now in JavaScript, solving a problem that shouldn't have
>> existed in the first place, generating something which generates something
>> else. It's a farce.
>>
>> *GK*
>>
>


Re: [OT] node.js and express

2016-11-24 Thread Nathan Schultz
@Greg, the last version of LightSwitch you could choose either HTML5 or
SilverLight on the client. But you're right... it's no longer an option.

On 25 November 2016 at 11:25, Greg Low (ē½—ę ¼é›·ę ¼åšå£«)  wrote:

> Yep, Lightswitch is dead. It was Silverlight based.
>
>
>
> Regards,
>
>
>
> Greg
>
>
>
> Dr Greg Low
>
>
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
> fax
>
> SQL Down Under | Web: www.sqldownunder.com | http://greglow.me
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com] *On Behalf Of *Nathan Schultz
> *Sent:* Friday, 25 November 2016 2:20 PM
>
> *To:* ozDotNet 
> *Subject:* Re: [OT] node.js and express
>
>
>
> Arguably, a productive web-based RAD tool is exactly the sort of niche
> that Microsoft LightSwitch was trying to fill (although I'm pretty certain
> it's now dead). As I said earlier, we use OutSystems here, and I believe
> it's an area that Aurelia.IO and other vendors are growing into as well.
>
>
>
> On 25 November 2016 at 11:00, Greg Low (ē½—ę ¼é›·ę ¼åšå£«)  wrote:
>
> But that's exactly the point Scott. Why have we gone so far backwards in
> productivity?
>
> Regards,
>
> Greg
>
> Dr Greg Low
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
> fax
> SQL Down Under | Web: www.sqldownunder.com
>
>
> --
>
> *From:* ozdotnet-boun...@ozdotnet.com  on
> behalf of Scott Barnes 
> *Sent:* Friday, November 25, 2016 12:09:38 PM
> *To:* ozDotNet
>
>
> *Subject:* Re: [OT] node.js and express
>
>
>
> "It Depends" on what tool you're looking at. If all you're doing is
> staring at Visual Studio and that's it and wondering why the world is so
> hard to develop for then that's not a realistic outcome, as despite all the
> OSS rhetoric, Microsoft is still preoccupied with Windows first class
> citizen approach to roadmaps. They'll dip their toes in other platforms but
> until revenue models change, tool -> windows. The rest will just be
> additive biproduct / bonus rounds outside that.
>
>
>
> Products like Unity3D and Xamarin were the answer to that question but not
> as "drag-n-drop tab dot ship" as Winforms of old.. those days are well
> behind us now.
>
>
>
>
>
>
>
>
>
>
>
>
> ---
> Regards,
> Scott Barnes
> http://www.riagenic.com
>
>
>
> On Fri, Nov 25, 2016 at 9:54 AM, Greg Low (ē½—ę ¼é›·ę ¼åšå£«) 
> wrote:
>
> So it then comes back to tooling again.
>
>
>
> Why canā€™t I build an app with the ease of a winform app and have it
> deployed in the current environments? Surely the app framework should fix
> the underlying mess and let me code to a uniform clean model.
>
>
>
> Regards,
>
>
>
> Greg
>
>
>
> Dr Greg Low
>
>
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
> fax
>
> SQL Down Under | Web: www.sqldownunder.com | http://greglow.me
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com] *On Behalf Of *Ken Schaefer
> *Sent:* Thursday, 24 November 2016 9:41 PM
> *To:* ozDotNet 
> *Subject:* RE: [OT] node.js and express
>
>
>
> I guess the conclusion I would draw from that is not so much that the ā€œweb
> world is so much worse because we have to cater for all these clientsā€ as
> ā€œthe web world is the only feasible answer to catering for all these
> clients ā€“ itā€™s simply not financially feasible to do it via thick clientsā€
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com ] *On Behalf Of *Nathan
> Schultz
> *Sent:* Wednesday, 23 November 2016 5:40 PM
> *To:* ozDotNet 
> *Subject:* Re: [OT] node.js and express
>
>
>
> As I said in my first e-mail, (when Greg was wondering what the key
> drivers were for web-development), I said "accessibility". Thick clients
> are simply not transportable.
>
> So the simple answer is, you don't.
>
>
>
> On 23 November 2016 at 14:21, Ken Schaefer  wrote:
>
>
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com] *On Behalf Of *Nathan Schultz
> *Sent:* Wednesday, 23 November 2016 5:10 PM
> *To:* ozDotNet 
> *Subject:* Re: [OT] node.js and express
>
>
>
> @Ken, your definition of Technical Debt isn't that different from that of
> Martin Fowler's.
>
> Although I'd say (with some seriousness) that JavaScript is Technical Debt
> ;-)
>
>
>
> I've found many of the things you mention far worse in the web-world
> (where you sometimes have to cater for everything from a mobile phone to a
> quadruple monitor desk-top, and everything in-between, all with different
> OS's, software, plug-ins, versions, and incompatibilities).
>
>
>
> Iā€™m curious to know how youā€™d cater for this variety of consumers if you
> were to do thick-client development? Wouldnā€™t that be even more of a dogā€™s
> breakfast of OSes, development environments/languages, pre-requisites youā€™d
> need to ship etc?
>
>
>
>
>
>
>


Re: [OT] node.js and express

2016-11-24 Thread Nathan Schultz
Arguably, a productive web-based RAD tool is exactly the sort of niche that
Microsoft LightSwitch was trying to fill (although I'm pretty certain it's
now dead). As I said earlier, we use OutSystems here, and I believe it's an
area that Aurelia.IO and other vendors are growing into as well.

On 25 November 2016 at 11:00, Greg Low (ē½—ę ¼é›·ę ¼åšå£«)  wrote:

> But that's exactly the point Scott. Why have we gone so far backwards in
> productivity?
>
> Regards,
>
> Greg
>
> Dr Greg Low
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
> fax
> SQL Down Under | Web: www.sqldownunder.com
>
> --
> *From:* ozdotnet-boun...@ozdotnet.com  on
> behalf of Scott Barnes 
> *Sent:* Friday, November 25, 2016 12:09:38 PM
> *To:* ozDotNet
>
> *Subject:* Re: [OT] node.js and express
>
> "It Depends" on what tool you're looking at. If all you're doing is
> staring at Visual Studio and that's it and wondering why the world is so
> hard to develop for then that's not a realistic outcome, as despite all the
> OSS rhetoric, Microsoft is still preoccupied with Windows first class
> citizen approach to roadmaps. They'll dip their toes in other platforms but
> until revenue models change, tool -> windows. The rest will just be
> additive biproduct / bonus rounds outside that.
>
> Products like Unity3D and Xamarin were the answer to that question but not
> as "drag-n-drop tab dot ship" as Winforms of old.. those days are well
> behind us now.
>
>
>
>
>
>
> ---
> Regards,
> Scott Barnes
> http://www.riagenic.com
>
> On Fri, Nov 25, 2016 at 9:54 AM, Greg Low (ē½—ę ¼é›·ę ¼åšå£«) 
> wrote:
>
>> So it then comes back to tooling again.
>>
>>
>>
>> Why canā€™t I build an app with the ease of a winform app and have it
>> deployed in the current environments? Surely the app framework should fix
>> the underlying mess and let me code to a uniform clean model.
>>
>>
>>
>> Regards,
>>
>>
>>
>> Greg
>>
>>
>>
>> Dr Greg Low
>>
>>
>>
>> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
>> fax
>>
>> SQL Down Under | Web: www.sqldownunder.com | http://greglow.me
>>
>>
>>
>> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@ozdot
>> net.com] *On Behalf Of *Ken Schaefer
>> *Sent:* Thursday, 24 November 2016 9:41 PM
>> *To:* ozDotNet 
>> *Subject:* RE: [OT] node.js and express
>>
>>
>>
>> I guess the conclusion I would draw from that is not so much that the
>> ā€œweb world is so much worse because we have to cater for all these clientsā€
>> as ā€œthe web world is the only feasible answer to catering for all these
>> clients ā€“ itā€™s simply not financially feasible to do it via thick clientsā€
>>
>>
>>
>> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@ozdot
>> net.com ] *On Behalf Of *Nathan Schultz
>> *Sent:* Wednesday, 23 November 2016 5:40 PM
>> *To:* ozDotNet 
>> *Subject:* Re: [OT] node.js and express
>>
>>
>>
>> As I said in my first e-mail, (when Greg was wondering what the key
>> drivers were for web-development), I said "accessibility". Thick clients
>> are simply not transportable.
>>
>> So the simple answer is, you don't.
>>
>>
>>
>> On 23 November 2016 at 14:21, Ken Schaefer  wrote:
>>
>>
>>
>>
>>
>> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@ozdot
>> net.com] *On Behalf Of *Nathan Schultz
>> *Sent:* Wednesday, 23 November 2016 5:10 PM
>> *To:* ozDotNet 
>> *Subject:* Re: [OT] node.js and express
>>
>>
>>
>> @Ken, your definition of Technical Debt isn't that different from that of
>> Martin Fowler's.
>>
>> Although I'd say (with some seriousness) that JavaScript is Technical
>> Debt ;-)
>>
>>
>>
>> I've found many of the things you mention far worse in the web-world
>> (where you sometimes have to cater for everything from a mobile phone to a
>> quadruple monitor desk-top, and everything in-between, all with different
>> OS's, software, plug-ins, versions, and incompatibilities).
>>
>>
>>
>> Iā€™m curious to know how youā€™d cater for this variety of consumers if you
>> were to do thick-client development? Wouldnā€™t that be even more of a dogā€™s
>> breakfast of OSes, development environments/languages, pre-requisites youā€™d
>> need to ship etc?
>>
>>
>>
>
>


Re: [OT] node.js and express

2016-11-22 Thread Nathan Schultz
As I said in my first e-mail, (when Greg was wondering what the key drivers
were for web-development), I said "accessibility". Thick clients are simply
not transportable.
So the simple answer is, you don't.

On 23 November 2016 at 14:21, Ken Schaefer  wrote:

>
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com] *On Behalf Of *Nathan Schultz
> *Sent:* Wednesday, 23 November 2016 5:10 PM
> *To:* ozDotNet 
> *Subject:* Re: [OT] node.js and express
>
>
>
> @Ken, your definition of Technical Debt isn't that different from that of
> Martin Fowler's.
>
> Although I'd say (with some seriousness) that JavaScript is Technical Debt
> ;-)
>
>
>
> I've found many of the things you mention far worse in the web-world
> (where you sometimes have to cater for everything from a mobile phone to a
> quadruple monitor desk-top, and everything in-between, all with different
> OS's, software, plug-ins, versions, and incompatibilities).
>
>
>
> Iā€™m curious to know how youā€™d cater for this variety of consumers if you
> were to do thick-client development? Wouldnā€™t that be even more of a dogā€™s
> breakfast of OSes, development environments/languages, pre-requisites youā€™d
> need to ship etc?
>


Re: [OT] node.js and express

2016-11-22 Thread Nathan Schultz
@Ken, your definition of Technical Debt isn't that different from that of
Martin Fowler's.
Although I'd say (with some seriousness) that JavaScript is Technical Debt
;-)

I've found many of the things you mention far worse in the web-world (where
you sometimes have to cater for everything from a mobile phone to a
quadruple monitor desk-top, and everything in-between, all with different
OS's, software, plug-ins, versions, and incompatibilities). Although to be
fair, I try to avoid thick-clients due to the support headaches - it's a
lot harder to roll-out a patch. The last one I had to write was only last
year (out of necessity), and was rolled out to half a dozen companies
(although limited to Australia and NZ) as part of a product we sell, but
fortunately it's given us very little grief. I made a conscious effort to
push all business logic into centralised web-services (which are hosted by
the companies) and left the clients as effectively just shells (and so far
no updates have been required on the clients - only the web-services). But
my view-point is primarily as a developer, and I can only comment on issues
that have come back to me. Personally I find web-development harder - it's
far less feature rich, more 'hacks' are required (which obfuscates intent
making it harder to maintain and refactor), and testing cycles are longer.
JavaScript was not written with teams in mind (classes are really just a
hack in JavaScript), it's difficult to write unit-tests for (e.g. (1, 2, 3)
!= (1, 2, 3) in JavaScript). And being a dynamic language, it's not
possible for tools to provide Intellisense support and many of the tools
that are expected today. And worse; many problems can only be found at
run-time. So I don't think it's a problem with the tools, but rather
limitations with the underlying platform. It's why 'transpiled' languages
are all the rage, but they're treating the symptom, not the cause.

The company I work for is far bigger, but it's an international
conglomerate, and I don't want it to seem like your experiences are any
less valid; I think we've just arrived at different viewpoints.

I largely agree with Scott on the standards committee causing the mess
(effectively ensuring JavaScript is the lingua franca). Even for some major
issues, I think glaciers would move faster than them in addressing. But
Scott's had a lot more skin in the game, and knows far more than I do in
this regard.

On 23 November 2016 at 07:46, Scott Barnes  wrote:

> The whole web committee structure is why we are stuck in purgatory
> quagmire swamp of hell.
>
> For example, when ECMA 4th Edition almost got legs to move JS forward but
> Adobe were being a bit of a political animal when it came to hedging their
> technical bets. Basically, at the time Adobe donated a bunch of tech to
> Mozilla foundation (http://blogs.adobe.com/billmccoy/2006/11/adobe_open_
> sour.html)  to set the stage for ActionScript to become more
> legitimate under the ECMA umbrella, but in doing so would have likely moved
> Flash deeper into the acceptance online beyond HTML. Keeping in mind Flash
> in 2006 was so popular that Google/Microsoft saw it as a likely threat to
> the web, given if everyone moved off transparent HTML and into a more
> encompassed tech such as a runtime like Flash, well, Google for one would
> have been starved of revenue oxygen (as you can't index .swf files at the
> time). There were a few other political issues but essentially ECMA really
> went into a major stall after that and its only once Flash has knifed that
> the actual momentum behind JavaScript picked back up again (sure it was
> being used despite Flash's existence but it wasn't as prolific in adoption
> as it is today).
>
> Like I say to many people - another word for a Flash is... a silver light,
> and the roadmap for Silverlight was glued on top of a briefcase that also
> said "Open when Flash is dead" and then inside that briefcase was a note
> "Now delete Silverlight". There's what you folks see on the official
> minutes and then there's the "beyond the curtain" corporate brand story...
>
>
>
>
> ---
> Regards,
> Scott Barnes
> http://www.riagenic.com
>
> On Wed, Nov 23, 2016 at 7:20 AM, Greg Keogh  wrote:
>
>> Well, I used Hotdog
>>>
>>
>> [This is a Friday topic but] Good god! I remember seeing a prominent
>> newpaper picture back in 1996 of Steve Outtrim lounging back in his
>> Ferrari, purchased on the sales of HotDog HTML editor (apparently he was
>> too young to get insurance for a Porsche). Writing HTML was the new fad and
>> tech-wonder back then and there were no friendly editors around, so I can
>> understand how he filled a gap just at the right time, but to make millions
>> with that piece of amateurish VB4 piffle! ... it made me weep for humanity.
>> Within a year or so we had "real" products like Dreamweaver and FrontPage
>> which mercifully crushed Susage software into a footnote of IT history.
>>
>> Back on JS though ... I read most of the ECMA and M

Re: [OT] node.js and express

2016-11-21 Thread Nathan Schultz
Ken, I'm curious as to why you think there is less technical debt in
web-applications?

I agree that the web is less mature - but it's not because of lack of time
or tooling. A mate of a mate made millions making web-development software
in the mid 90's (HotDog software), and I was doing web apps in Visual
InterDev (which is before Visual Studio's time).

On 22 November 2016 at 12:13, Ken Schaefer  wrote:

> A couple of possible reasons:
>
>
>
> -  All the emphasis is on centrally delivered applications (aka
> web based), so thatā€™s where all the innovation and change is happening. It
> will take time for maturity and tooling to catch up.
>
> -  Itā€™s harder to bypass the full technical cost of development
> when somethingā€™s centrally delivered. Itā€™s easier to incur ā€œtechnical debtā€
> when you build a little thick-client app ā€“ the real cost of the app gets
> buried in IT operations.
>
>
>
> Cheers
>
> Ken
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com] *On Behalf Of *Greg Low (??)
> *Sent:* Tuesday, 22 November 2016 2:33 PM
> *To:* ozDotNet 
> *Subject:* RE: [OT] node.js and express
>
>
>
> But thatā€™s a centralized vs distributed argument. I understand that. By
> why exactly does a centralized development process have to be orders of
> magnitude slower than a distributed one? I just think the tooling has let
> us down -> big time.
>
>
>
> Regards,
>
>
>
> Greg
>
>
>
> Dr Greg Low
>
>
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
> fax
>
> SQL Down Under | Web: www.sqldownunder.com | http://greglow.me
>
>
>
>
>


Re: [OT] node.js and express

2016-11-21 Thread Nathan Schultz
@Adrian, I've only been using OutSystems for a relatively short time.
However, my company has been using it for a couple of years now (mainly
products we sell and projects for large clients). You can use OutSystems
for free as a sole-developer, but you don't get the ability to use
on-premise deployment or generate code; you're apps are stuck on the
OutSystems cloud forever, and you don't get all of the niceties such as
source control, whole-of-life-cycle management, etc.

@Ken, I definitely agree issues have simply moved from one place to
another. It's easy to over-romanticise the old days, but I still maintain a
VB6 application for one of our clients. It's nothing short of a nightmare
trying to keep it running on an ever-changing SOE - to the point where it's
now an option to redevelop it, or transfer it to an unchanging VM. And even
from a development perspective, it's easy to forget how hard some things
used to be when .Net makes them so easy.

But many of the same problems persist on the web, and the web has brought
entirely new challenges. The web has all the same issues of DLL hell -
different components need different versions of the same component - like
the other day I saw a project where there required multiple versions of
JQuery due to different component requirements - and the hacks required to
ensure that the right version is used for the right components isn't
pretty. And apps are no longer isolated within the company - you're not
developing for a particular SOE anymore - but rather a polyglot of devices
with different operation systems, software, features, sizes, resolutions
and capabilities. Testing if anything is a longer process than ever before.
Licensing for some software is on a per-user basis on the web, which brings
it's own challenges for anonymous systems. Deployment must still go through
a full change management process (there are still a multitude of things
that can go wrong), and when you consider the same thing could occur today
using one-click deployment, sand-boxed applications, and Docker containers,
the web doesn't have an ace up its sleeve there either.


On 22 November 2016 at 10:08, Ken Schaefer  wrote:

> I think thatā€™s more likely the case when you have a single thick client,
> in isolation.
>
>
>
> It doesnā€™t really scale when you have an ecosystem of hundreds (or
> thousands) of thick-clients in your environment.
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com] *On Behalf Of *Nathan Schultz
> *Sent:* Tuesday, 22 November 2016 12:46 PM
> *To:* ozDotNet 
> *Subject:* Re: [OT] node.js and express
>
>
>
> @Ken; except that thick clients also are easier to debug and maintain as
> well;
>
>
>


Re: [OT] node.js and express

2016-11-21 Thread Nathan Schultz
Ack.. meant OutSystems IS a heavy solution.

On 22 November 2016 at 09:45, Nathan Schultz  wrote:

> @Ken; except that thick clients also are easier to debug and maintain as
> well; in fact the whole life-cycle is shorter.
>
> However I agree that fundamental drivers are towards web-based
> applications. Accessibility is the key; we're seeing the Internet of Things
> (IoT) exploding in growth. A huge growth in cloud computing. People want to
> be able to access everything they need no matter where they are. And thick
> clients are simply not transportable.
>
> These days I use OutSystems to generate my line of business reactive
> web-applications quickly and easily (it's very reminiscent of old style RAD
> tools - with similar limitations). However it doesn't come cheap (I'm lucky
> in that my company pays for it), and isn't perfect. But never-the-less, we
> re-developed an old thick client application (which has continually grown
> to mammoth proportions over a decade), and re-developed it (including new
> features) as a reactive mobile-friendly web-application in under 8 months.
> I find it's ideal for data driven line-of-business applications; but it's
> not something I'd reach for, for complex process heavy operations where
> every millisecond counts (although you can call .Net assemblies natively,
> or consume REST web-services that you can build yourself to get around
> this).
>
> I still keep my eyes somewhat on traditional web-development (OutSystems
> is not a heavy solution). I've had a lot of enjoyable moments with Elm, but
> it's still immature and some simple things are still infuriatingly hard in
> it. However, it's got a good foundation, and I think in time it will turn
> out to be very good.
>
> On 22 November 2016 at 09:25, Greg Low (ē½—ę ¼é›·ę ¼åšå£«)  wrote:
>
>> What do you see as the key drivers Ken?
>>
>>
>>
>> I can guess as I spend my life in these environments but Iā€™m left
>> wondering if we could have solved them a much better way.
>>
>>
>>
>> We simply havenā€™t achieved productivity. And Iā€™ll bet if someone is
>> starting to build something new today, they canā€™t even work out what to
>> use. How did we get to this?
>>
>>
>>
>> Regards,
>>
>>
>>
>> Greg
>>
>>
>>
>> Dr Greg Low
>>
>>
>>
>> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
>> fax
>>
>> SQL Down Under | Web: www.sqldownunder.com | http://greglow.me
>>
>>
>>
>> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@ozdot
>> net.com] *On Behalf Of *Ken Schaefer
>> *Sent:* Tuesday, 22 November 2016 12:15 PM
>> *To:* ozDotNet 
>> *Subject:* RE: [OT] node.js and express
>>
>>
>>
>> Typical Devs ā€“ all they talk about is how much faster/quicker they can
>> write an app in one tech vs. another. As if thatā€™s the only thing that
>> matters. JJ (note, smiley faces!)
>>
>>
>> Development time/cost/effort is generally a small fraction of the cost of
>> supporting an app, let alone the cost of supporting a large environment.
>>
>>
>>
>> Maybe thick-client deployment works well in small(er) environments. It
>> doesnā€™t scale in larger ones. As David alluded too, there were many drivers
>> to moving towards web-based applications
>>
>>
>>
>> Cheers
>>
>> Ken
>>
>>
>>
>> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@ozdot
>> net.com ] *On Behalf Of *DotNet Dude
>> *Sent:* Tuesday, 22 November 2016 9:15 AM
>> *To:* ozDotNet 
>> *Subject:* Re: [OT] node.js and express
>>
>>
>>
>> Totally agree Greg. About 80% of what we are currently building could be
>> done in 1/10 of the time using winforms or mvc.
>>
>>
>>
>> Some of our clients are even TELLING us how to build it using whatever
>> technology they've recently heard of. One customer recently asked us to use
>> Electron. Did they need cross platform? No. Why force javascript down my
>> team's throat when it can be avoided altogether and we can have it done in
>> a week with wpf or winforms?!
>>
>>
>>
>> Many years ago we just did a winforms app and deployed via clickonce.
>> Worked well and no complaints in the Intranet environments. I've yet to see
>> a case where not using winforms (or wpf) or webforms (or mvc) is worth it
>> in Intranet situations.
>>
>>
>>
>> Internet facing apps is a whole different thing obviously.
>>
>> On Tu

Re: [OT] node.js and express

2016-11-21 Thread Nathan Schultz
@Ken; except that thick clients also are easier to debug and maintain as
well; in fact the whole life-cycle is shorter.

However I agree that fundamental drivers are towards web-based
applications. Accessibility is the key; we're seeing the Internet of Things
(IoT) exploding in growth. A huge growth in cloud computing. People want to
be able to access everything they need no matter where they are. And thick
clients are simply not transportable.

These days I use OutSystems to generate my line of business reactive
web-applications quickly and easily (it's very reminiscent of old style RAD
tools - with similar limitations). However it doesn't come cheap (I'm lucky
in that my company pays for it), and isn't perfect. But never-the-less, we
re-developed an old thick client application (which has continually grown
to mammoth proportions over a decade), and re-developed it (including new
features) as a reactive mobile-friendly web-application in under 8 months.
I find it's ideal for data driven line-of-business applications; but it's
not something I'd reach for, for complex process heavy operations where
every millisecond counts (although you can call .Net assemblies natively,
or consume REST web-services that you can build yourself to get around
this).

I still keep my eyes somewhat on traditional web-development (OutSystems is
not a heavy solution). I've had a lot of enjoyable moments with Elm, but
it's still immature and some simple things are still infuriatingly hard in
it. However, it's got a good foundation, and I think in time it will turn
out to be very good.

On 22 November 2016 at 09:25, Greg Low (ē½—ę ¼é›·ę ¼åšå£«)  wrote:

> What do you see as the key drivers Ken?
>
>
>
> I can guess as I spend my life in these environments but Iā€™m left
> wondering if we could have solved them a much better way.
>
>
>
> We simply havenā€™t achieved productivity. And Iā€™ll bet if someone is
> starting to build something new today, they canā€™t even work out what to
> use. How did we get to this?
>
>
>
> Regards,
>
>
>
> Greg
>
>
>
> Dr Greg Low
>
>
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
> fax
>
> SQL Down Under | Web: www.sqldownunder.com | http://greglow.me
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com] *On Behalf Of *Ken Schaefer
> *Sent:* Tuesday, 22 November 2016 12:15 PM
> *To:* ozDotNet 
> *Subject:* RE: [OT] node.js and express
>
>
>
> Typical Devs ā€“ all they talk about is how much faster/quicker they can
> write an app in one tech vs. another. As if thatā€™s the only thing that
> matters. JJ (note, smiley faces!)
>
>
> Development time/cost/effort is generally a small fraction of the cost of
> supporting an app, let alone the cost of supporting a large environment.
>
>
>
> Maybe thick-client deployment works well in small(er) environments. It
> doesnā€™t scale in larger ones. As David alluded too, there were many drivers
> to moving towards web-based applications
>
>
>
> Cheers
>
> Ken
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-bounces@
> ozdotnet.com ] *On Behalf Of *DotNet Dude
> *Sent:* Tuesday, 22 November 2016 9:15 AM
> *To:* ozDotNet 
> *Subject:* Re: [OT] node.js and express
>
>
>
> Totally agree Greg. About 80% of what we are currently building could be
> done in 1/10 of the time using winforms or mvc.
>
>
>
> Some of our clients are even TELLING us how to build it using whatever
> technology they've recently heard of. One customer recently asked us to use
> Electron. Did they need cross platform? No. Why force javascript down my
> team's throat when it can be avoided altogether and we can have it done in
> a week with wpf or winforms?!
>
>
>
> Many years ago we just did a winforms app and deployed via clickonce.
> Worked well and no complaints in the Intranet environments. I've yet to see
> a case where not using winforms (or wpf) or webforms (or mvc) is worth it
> in Intranet situations.
>
>
>
> Internet facing apps is a whole different thing obviously.
>
> On Tuesday, 22 November 2016, Greg Low (ē½—ę ¼é›·ę ¼åšå£«)  wrote:
>
> Iā€™m simply amazed at what weā€™ve done to ourselves as an industry.
>
>
>
> I was on a project a while back. With 12 devs and 7 monthsā€™ work, the core
> business web app was created. The guys worked hard. At the end, they were
> still struggling to get it to look right on different browsers.
>
>
>
> But in the end, I looked at the outcome and knew in my heart that I could
> have created it as a winform app by myself in around a week.
>
>
>
> This is progress?
>
>
>
> We started building web apps because the IT people were fed up with trying
> to deploy Windows apps. It wasnā€™t because users were crying out for a lousy
> visual experience, and apps that throw away their work if they stop using
> them for the session timeout period.
>
>
>
> I think we ā€œfixedā€ the wrong problem.
>
>
>
> Regards,
>
>
>
> Greg
>
>
>
> Dr Greg Low
>
>
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913
> fax
>
> 

Re: Command and Query Responsibility Segregation Pattern (CQRS)

2016-07-14 Thread Nathan Schultz
Hi Tony,

Yeah, it seems strange to me too.

Often CQRS is sometimes used in conjunction with Event Sourcing (i.e. an
append only data-store). So maybe he's thinking of the Repository Pattern
as a traditional CRUD interface, and it's that which they're not using?

Regards,

Nathan.

On 14 July 2016 at 14:03, Tom Rutter  wrote:

> Hey Tony, I too am confused by the developer's comment. My understanding
> is the same as yours it seems.
>
>
> On Wed, Jul 13, 2016 at 8:12 PM, Tony Wright  wrote:
>
>> Hi all,
>>
>> I had a discussion the other day with an experienced developer who told
>> me that "instead of using the repository pattern, they just use CQRS these
>> days."
>>
>> I am somewhat puzzled with that statement, because it is my understanding
>> that the two are almost completely independent of each other.
>>
>> In simple terms, CQRS is used to separate requests from responses, so
>> data received from a database use different classes from the ones used to
>> submit updates. e.g. PersonCreateInputDto, which might contain just the
>> fields used to create a new person in the database, and PersonOutputDto,
>> which might contain just the fields needed to display a list of Person
>> records. You don't use the same object for both types of transaction, just
>> the bare minimum in each.
>>
>> Repository, on the other hand, is used for dependency injection. By
>> changing the dependency provider, I can switch a set of runtime classes
>> with a set of testing classes. The dependency provider injects the
>> dependent objects that are desired at the time, which could be either
>> runtime objects, or mock testing objects, so it is predominantly used to
>> enable better testing.
>>
>> I got the impression that the person was somehow using CQSR to perform
>> their testing instead. Is there something that I'm missing here?
>>
>> Regards,
>> Tony
>>
>
>


Re: [OT] New PC - Intel LGA 2011-3 socket boards

2016-02-02 Thread Nathan Schultz
I've been looking at refreshing my system as well. I'm not sure why you'd
consider a Haswell system over SkyLake?

The price difference between something like an Intel i5-4590 (Haswell) and
an Intel i5-6500 (Skylake) is ~$15.
And the price difference between 8GB of DDR3 (1600Mhz) and 8GB of DDR4
(2133Mhz) is ~$20 (at least for Kingston).

I don't know where you're shopping to see three-fold price differences.




On 2 February 2016 at 19:51, Ian Thomas  wrote:

> Iā€™m a bit ignorant of this, being a ā€œslow adopterā€ ā€“ so would appreciate
> some opinions.
>
>  Apart from being ready for another self-build, a 15yo releative is keen
> to build himself a gaming PC that will last a few years [his choice of
> graphics card is based on the Nvidia GTX 970 4GB GDDR5 chipset, which is
> expensive: the Asus ASUS STRIX GeForce GTX 970, (Base: 1140MHz, Boost:
> 1279MHz), 4096MB (7010MHz) GDDR5, PCIE3.0, Dual DVI, HDMI, DisplayPort  i
> over $500 at a couple of places Iā€™ve checked].
>
> Someone was telling me that the LGA 2011-3 supports both DDR3 and DDR4
> RAM, and there are some motherboards about that have slots for both types
> of memory.
>
> Is that right?
>
> The socket is used for the Intel Haswell-E and Haswell-EP CPUs. It was
> released in 2014 so now there should be some manufacturers supporting
> motherboard builds for people like me who would stuff it with DDR3 until
> the cost of DDR4 comes down by a factor of 3 or so ..
>
>
>
> Ian Thomas
>
> Albert Park, Victoria 3206 Australia
>
>
>


Re: Is F# ready for serious work without mandatory tail call elimination in the CLR?

2015-10-06 Thread Nathan Schultz
The problem isn't isolated to F#; LINQ in C# is also a functional .NET
language.
But I'm yet to encounter a problem related to the compiler in it either.
Like in LINQ, stack overflows have always been caused by me inappropriately
calling a .ToList() on a IEnumerable for example.
And it's a same for F#... what you describe just doesn't seem to be an
issue in practice when likewise using appropriate tail-recursive code (at
least that I've experienced).

And there are a few fairly large users of F# around the place that use it
critically:
For example; GameSys uses F# for their social gaming department (i.e.
Facebook games). I know Yan Cui mentioned they get 250 million requests per
day.
Likewise, the opponent rating and matching system on X-Box Live is written
in F#. And Jane Street uses F# for stock-analysis.
The e-Commerce site, Jet.com has also likewise adopted F# for their
price-matching algorithms.
And consider "The Gamma" (http://thegamma.net/) which is a 'big data'
project in Data Journalism.

All of these use F# to crunch some pretty large sets of data. In fact type
providers seem to make F# a good fit for these sorts of things.
So the compiler implementation seems to be doing the right thing. And given
the rate at which big-data is growing, I'd be surpised if there isn't
additional focus in the future.

Nathan Schultz

On 7 October 2015 at 10:37, Thomas Koster  wrote:

> Piers,
>
> On 8 September 2015 at 15:58, Thomas Koster  wrote:
> > F# appears to eliminate tail calls to self by program transformation
> > where it is trivial to do so, but relies entirely on the CLR for
> > optimizing tail calls in general. This would mean that the stability and
> > reliability of programs written for the CLR in F# is uncertain, and that
> > debug builds of F# programs are always unreliable. I would want much
> > stronger guarantees about space complexity if I were to seriously
> > consider F# as a programming language for paid work.
> >
> > So if anybody has used F# in the real world, what's the story?
>
> On 17 September 2015 at 14:54, Nathan Schultz  wrote:
> > Here's the blog post from the Visual Studio F# team on it (although it's
> > getting old now):
> >
> http://blogs.msdn.com/b/fsharpteam/archive/2011/07/08/tail-calls-in-fsharp.aspx
>
> On 7 October 2015 at 01:14, Piers Williams 
> wrote:
> > At the very end of that F# team blog post Nathan linked they say:
> >
> > "Most of these restrictions have been lifted in .NET 4.0."
> >
> > ... and if you read the linked article ..
> >
> > "For CLR 4 the fact that the x64 JIT would sometimes not honor the
> ā€œtail.ā€
> > prefix prevented functional languages like F# from being viable.  So we
> > worked to improve the x64 JIT so that it could honor the ā€œtail.ā€ prefix
> all
> > of the time and help make F# a success.  Except where explicitly called
> out,
> > x86 and IA64 remain unchanged between CLR 2 and CLR 4, and the remainder
> of
> > this document refers solely to the x64 JIT.  Also this is specific to
> CLR 4,
> > all other versions of the runtime or JIT (including service packs, QFEs,
> > etc.) might change this in any number of ways."
>
> Thanks. This post is the most technical description of CLR4's
> improvements I have read yet.
>
> For others, this post by Richins is at:
>
> http://blogs.msdn.com/b/clrcodegeneration/archive/2009/05/11/tail-call-improvements-in-net-framework-4.aspx
>
> Again, I am going to make some general comments about what I've read for
> the benefit of the list. I am not being critical of your responses,
> which have been very helpful in locating all the literature out there
> about this issue.
>
> Richins says many, but not all, restrictions mentioned in ECMA-335 are
> lifted in CLR4. The wart that remains is CAS, which seems to be
> unpopular anyway. This is reassuring.
>
> Richins's post precedes the 6th edition of ECMA-335 by at least two
> years and the 6th edition still contains the original vague relaxations
> of the rules. ECMA-335 is probably just being conservative in the name
> of portability, but do I treat a blog post as more authoritative than an
> ECMA standard?
>
> This highlights a second concern: ECMA-335 does not prescribe the
> precise semantics and deliberately leaves them up to the implementation,
> but as far as I can tell, Microsoft .NET lacks an authoritative manual
> documenting the precise semantics of their implementation. If I were
> writing a compiler, I would be nervous about targeting the CLR going
> solely on ECMA-335. If I target IA-64, Intel gives me thousands of pages
> of excruciating detail about the platform.

Re: Is F# ready for serious work without mandatory tail call elimination in the CLR?

2015-09-16 Thread Nathan Schultz
There's some discussion of it here:
http://stackoverflow.com/questions/15864670/generate-tail-call-opcode

In particular, look at Tomas Petricek's answer (he is an F# MVP). It
appears the F# compiler (in release mode) does give guarantees about
tail-recursion (it's the C# compiler that cannot).

Here's the blog post from the Visual Studio F# team on it (although it's
getting old now):
http://blogs.msdn.com/b/fsharpteam/archive/2011/07/08/tail-calls-in-fsharp.aspx


On 16 September 2015 at 15:31, Thomas Koster  wrote:

> Nathan,
>
> On 8 September 2015 at 15:58, Thomas Koster  wrote:
> > F# appears to eliminate tail calls to self by program transformation
> > where it is trivial to do so, but relies entirely on the CLR for
> > optimizing tail calls in general. This would mean that the stability and
> > reliability of programs written for the CLR in F# is uncertain, and that
> > debug builds of F# programs are always unreliable. I would want much
> > stronger guarantees about space complexity if I were to seriously
> > consider F# as a programming language for paid work.
> >
> > So if anybody has used F# in the real world, what's the story?
>
> On 14 September 2015 at 18:06, Nathan Schultz  wrote:
> > IIRC, as you said, for most tail-end recursion, you'll find that the IL
> that
> > F# generates is actually a simple loop with a mutable variable. In cases
> > where there's continuations involved or more complex scenarios with
> multiple
> > recursive functions, F# will automatically provide the CLR with the .tail
> > instruction. Work has gone into the CLR to better support tail end
> > recursion, and there have been lots of fixes in recent versions (e.g.
> going
> > back a couple of years, there used to be scenarios where the JIT would
> > ignore the flag, but have been fixed).
> >
> > I've never run into an issue myself, although infrequently I have heard
> of
> > corner-cases that still pose issues (e.g.
> >
> http://blogs.msdn.com/b/dotnet/archive/2015/07/28/ryujit-bug-advisory-in-the-net-framework-4-6.aspx
> ).
> > However, I've also heard it said that when it comes to tail-end
> recursion F#
> > is in a better place with the CLR than Scala is with the JVM. And both
> are
> > used in production even in financial institutions.
> >
> > Given that I (rarely) still run into other bugs in the .Net framework
> with
> > C#, I don't see this as anything different; testing (including on
> different
> > platforms) is a necessary part of application development, and with F#
> it's
> > no different.
>
> Thanks for your response.
>
> I readily believe that the JVM is a worse place for functional languages
> than the CLR. But both seem to share the same weakness when it comes to
> implementing functional languages: they both support only one evaluation
> strategy, namely the stack-based, strict, call-by-value evaluation
> strategy of the curly brace langauges (and their predecessors). The
> opcodes needed to implement other strategies efficiently are missing.
>
> I am starting to see that I may have over-estimated the number of ways
> space leaks caused by tail calls can creep into an F# program. But since
> F# uses a strict evaluation order where tail call elimination is
> absolutely necessary to avoid excessive space usage, the discretionary
> nature of the ".tail" opcode prefix still makes me uneasy and I would
> rather not have to write tests to verify the correctness of the F#
> compiler, let alone the JIT compiler.
>
> So for now, for me, F# remains just an intellectual curiosity.
>
> --
> Thomas Koster
>


Re: Is F# ready for serious work without mandatory tail call elimination in the CLR?

2015-09-14 Thread Nathan Schultz
IIRC, as you said, for most tail-end recursion, you'll find that the IL
that F# generates is actually a simple loop with a mutable variable. In
cases where there's continuations involved or more complex scenarios with
multiple recursive functions, F# will automatically provide the CLR with
the .tail instruction. Work has gone into the CLR to better support tail
end recursion, and there have been lots of fixes in recent versions (e.g.
going back a couple of years, there used to be scenarios where the JIT
would ignore the flag, but have been fixed).

I've never run into an issue myself, although infrequently I have heard of
corner-cases that still pose issues (e.g.
http://blogs.msdn.com/b/dotnet/archive/2015/07/28/ryujit-bug-advisory-in-the-net-framework-4-6.aspx
).
However, I've also heard it said that when it comes to tail-end recursion
F# is in a better place with the CLR than Scala is with the JVM. And both
are used in production even in financial institutions.

Given that I (rarely) still run into other bugs in the .Net framework with
C#, I don't see this as anything different; testing (including on different
platforms) is a necessary part of application development, and with F# it's
no different.


On 8 September 2015 at 13:58, Thomas Koster  wrote:

> Hi friends,
>
> When I first heard of F# a few years ago I laughed out loud, but its
> popularity is exploding, and .NET pays the bills, so I am forced to take
> it a little bit more seriously these days.
>
> Tail call elimination in .NET is a *hint only* that JIT is free to
> ignore in many situations [1], including:
> - in debug builds,
> - when calling virtual methods,
> - when calling a method in a different security trust group,
> - in any other case where an "implementation-specific restriction
>   prevents the 'tail.' prefix from being obeyed."
>
> Yet tail call elimination is *essential* to the correct functioning of
> programs written in any functional programming language.
>
> F# appears to eliminate tail calls to self by program transformation
> where it is trivial to do so, but relies entirely on the CLR for
> optimizing tail calls in general. This would mean that the stability and
> reliability of programs written for the CLR in F# is uncertain, and that
> debug builds of F# programs are always unreliable. I would want much
> stronger guarantees about space complexity if I were to seriously
> consider F# as a programming language for paid work.
>
> So if anybody has used F# in the real world, what's the story?
>
> [1] "Common Language Infrastructure (CLI)" 6e, ECMA-335, III.2.4
>
> --
> Thomas Koster
>


Re: Alternative Web Service Proxy/Client class generators for .net recommendations?

2015-08-18 Thread Nathan Schultz
If svcutil.exe isn't working, there's always the F# WSDL Type Provider:
https://msdn.microsoft.com/en-us/library/hh156503.aspx

I know it's a bit of additional work mixing languages though, and
unfortunately you can't call Type Providers directly from C#, so you'd need
to wrap it in a F# class to use it.

Regards, Nathan

On 18 August 2015 at 12:21, Preet Sangha  wrote:

> I've been in the BI space for the past few years and so have sort of
> missed out on all web service goodness since .net 4 came out.
>
> I'm now back in the c# programming space and have need to consume a third
> party web service (written in PHP) and thus create client side proxy for
> it. Currently the Service Proxy generator in Visual studio is not able to
> handle the WSDL that comes out of the service and basically gives up trying.
>
> I know we can access the service in SOAPUI so the service is working, but
> before we investigate any hand crafting I was wondering if anyone here is
> using a third party service client tool or even if one exists.
>
>
> regards,
> Preet, in Auckland NZ
>
>


Re: WCF clients

2015-07-12 Thread Nathan Schultz
Download a copy of SOAPUI (which is free and Java based), and point it to
your WSDL, and see for yourself that your services work. Personally with
Basic HTTP Binding, you shouldn't run into too many problems.

I think the only thing I've come across is the WSDL only references (rather
than embeds) the XSD Types which may trip some tools up. If you're using
.Net 4.5+, your can simply add ?singleWSDL after your service, and it will
include the XSD Types in your WSDL:
https://msdn.microsoft.com/en-us/library/dd456789(v=vs.110).aspx

Prior to .Net 4.5, I generated my WSDL using svcutil, and opened it in
Notepad, and replaced the XSD Type references by hand.




On 10 July 2015 at 17:00, Greg Keogh  wrote:

> Folks, we have a WCF basic http binding service that has been in
> production use for many years, but so far the only clients have been .NET
> desktop and Sliverlight apps. They can of course use a proxy class
> generated by svcutil.exe and it's all easy peasy.
>
> Now the time has come to open the service up to other clients such as apps
> on phones and tablets written in Objective-C, Swift, Java and perhaps
> JavaScript. We haven't had any of these clients consume our service yet,
> but it may only be weeks away. A Java guy told me that if he has the WSDL
> then it won't be a problem, but I fear there may be devils in the details.
> I quite worry that the svcutil generated code contains stubs of all C#
> classes that are public in the service and can't imagine how they would
> transformed for consumption by different clients.
>
> I fear that our SOAP style service is too specific and old fashioned to be
> easily consumed by non .NET clients. I'd be interested to hear if anyone
> can confirm this or has general comments in this area. I'm guessing a REST
> style would be best for everyone, but what will it return, XML, JSON, or
> both?
>
> *Greg K*
>


Re: F# sequence

2015-02-01 Thread Nathan Schultz
I would ask the friendly people at F# chat:
http://chat.stackoverflow.com/rooms/51909/f



On 2 February 2015 at 11:52, mike smith  wrote:

> F# the language?   I'm intrigued.  Enough to google it
>
> On Mon, Feb 2, 2015 at 2:11 PM, Greg Keogh  wrote:
>
>> What's the neatest way of generating an F# sequence of integers of the
>> form 6nĀ±1, so I get this:
>>
>> 5, 7, 11, 13, 17, 19, 23, 25, ...
>>
>> *Greg K*
>>
>
>
>
> --
> Meski
>
>  http://courteous.ly/aAOZcv
>
> "Going to Starbucks for coffee is like going to prison for sex. Sure,
> you'll get it, but it's going to be rough" - Adam Hills
>


Re: Generating a CRUD UI

2014-11-05 Thread Nathan Schultz
Hi Greg,

I'm in a similar position; I have a suite of "My Generation" templates for
CRUD + UI development, but "My Generation" is getting long in the tooth,
doesn't play well in newer versions of Windows, and seems to be dying a
long and slow death. There is CodeSmith Generator, but it's more than I'm
willing to pay for a stand-alone code generation tool that I only use from
time to time.

I started to move some of my templates to T4, and while it's nice that it's
all in Visual Studio, it feels like a distinct step backwards from My
Generation and there's no real way to manage metadata.

I've been writing a script that connects to a database, and exports all of
the metadata as an XML file, so I can manage it with any XML editor. I'm
using F# for this, and Type-Providers make it so easy (compared to C#
anyway).

I'm then undecided on which technology to use to generate actual code from
that meta-data. I like MVC + razor as a rendering engine, but I'm not sure
how well this would fly outside of the web. Or I could use T4. Perhaps I
could work with an open-source tool like Moustache. Or I could write a
custom-code solution. I'm yet to decide.

On 6 November 2014 09:28, Greg Keogh  wrote:

> Folks, I have a SQL Server Express 2008 database with about 20 tables with
> neat relationships and I'd like to have a desktop utility to maintain the
> tables. I just want to list, edit, create and delete rows. A few years ago
> I was faced with a similar situation and I used T4 templates to spit out
> WPF controls, dialogs, grids and code behinds, which worked great (and I'm
> still using the app). Rather than do that sort of thing again I thought it
> was worth asking for suggestions about new tools or techniques that might
> make a cruddy UI over some tables.
>
> *Greg K*
>


Re: [OT] Quiet

2014-09-19 Thread Nathan Schultz
I would mention F#. According to the TIOBE Index, it's now the 16th most
popular language (up from 26th a year ago).
It's newer than Ruby and Python, and doesn't break compatibility like
Python (which has schismed their community).
It contains more bells and whistles than Apples new language in Swift, and
and it has the advantage of being able to interoperate with your 'legacy'
C# code. You don't have to throw anything away.

On the down side, unless you're familar with functional languages, it can
take a little while to get used to. Some of the tooling support isn't
fantastic in Visual Studio (there's no resharper).
Once you are used to it, it's a productive language with less
'boiler-plate' code than C# (which I think is still a very nice language).


On 19 September 2014 14:52, mike smith  wrote:

>
> http://s3.crashworks.org.s3-website-us-east-1.amazonaws.com/if-programming-languages-were-vehicles/
>
> I've got the APV
>
> On Fri, Sep 19, 2014 at 2:47 PM, Bec Carter 
> wrote:
>
>> JS is still ugly to me no matter what the hipsters says
>>
>>
>> On Fri, Sep 19, 2014 at 1:44 PM, Joseph Cooney 
>> wrote:
>>
>>> Looking at data like http://langpop.corger.nl it seems like c# is alive
>>> and well. Java, PHP and JS are really the only languages of similar
>>> popularity. I imagine JS will probably pull ahead as more stuff goes to
>>> node, or server-side presentation logic moves to the client.
>>>
>>> Joseph
>>> On Sep 19, 2014 10:15 AM, "William Luu"  wrote:
>>>
 Tech moves quickly.

 But C# is far from "legacy", it is a mature, yet still evolving
 language.

 C# 6 is coming - http://msdn.microsoft.com/en-us/magazine/dn683793.aspx
 and
 http://roslyn.codeplex.com/wikipage?title=CSharp%20Language%20Design%20Notes&referringTitle=Documentation
 And some short videos on it -
 https://www.wintellectnow.com/course/detail/what-s-new-in-c-6-visual-basic-dotnet-14-and-visual-studio-14




 On 19 September 2014 10:01, Bec Carter  wrote:

> Just the other day a friend of mine mentioned how at a meeting with
> the big guns at her office they were referring to C# as "legacy". Am I now
> the new VB6 equivalent? N. Help.
>
>
> On Thu, Sep 18, 2014 at 10:00 AM, Greg Keogh  wrote:
>
>> Awfully quiet on here. Have people left?
>>>
>>
>> Indeed I was thinking that in recent weeks. Either .NET is obsolete
>> and no one wants to talk about it, or after a decade in the group 
>> everyone
>> is now a ninja guru and have no questions.
>>
>>
>>> Anyway anybody have a surface pro 3? Thoughts so far? Ok for dev
>>> work?
>>>
>>
>> No surface, however I was going to take my wife's brand new iPad to a
>> meeting today to take notes, but I couldn't even figure out to close a
>> browser window on it, so I'll come back to the idea later.
>>
>> *Greg*
>>
>>
>>
>

>>
>
>
> --
> Meski
>
>  http://courteous.ly/aAOZcv
>
> "Going to Starbucks for coffee is like going to prison for sex. Sure,
> you'll get it, but it's going to be rough" - Adam Hills
>


Re: What's a million lines of code worth?

2014-04-22 Thread Nathan Schultz
I have read somewhere in the media before that TDD is not even being used
for the F35's development.
I thought writing something so complex without it would be crazy, myself.
Not that TDD is a silver-bullet, but in my experience it does make a
substantual difference to quality.
Hopefully they have some sort of automated testing process in place.

They may have other tricks as well. While they're probably using the Ada
programming language (which is known for its robustness), simple things
like making variables immutable by default can help reduce side effects -
especially in concurrent systems (which I'd imagine the F35 probably is)
since the precise order of execution is not known.



On 23 April 2014 12:07, Greg Keogh  wrote:

> 19,000,000 million lines of code for 21,000,000,000 dollars for 58 planes
> averages out at about $19 per line. Now there's some incentive to code
> fast. But I enjoy deleting lines of code as well, I wonder if they pay for
> that -- *Greg K*
>
>
> On 23 April 2014 12:51, Paul Evrat  wrote:
>
>> Hi All,
>>
>>
>>
>> Collins Class Submarine ā€“ 6 million lines of code.
>>
>>
>>
>> Joint Strike Fighter ā€“ 19 million lines of code.
>>
>>
>>
>> Seems plausible OR Over-bloated software development mismanagement ??
>>
>>
>>
>> Not saying one way or the other, just interested in your professional
>> gut-feels ?
>>
>>
>>
>> Article -
>>
>> http://www.abc.net.au/am/content/2014/s3990236.htm
>>
>>
>>
>> Paul E ..
>>
>>
>>
>>
>>
>>
>>
>>
>>
>
>


Re: Visual Studio 2013 and setup projects

2013-10-21 Thread Nathan Schultz
I can't comment on InstallShield limited for VS2013, but I've used it in
the past.

It works for very simple scenarios - like I've got it to do some file
association. Anything beyond that, like getting it to install dependencies,
or even getting support you'll either be scraping together some coin to pay
to Flexera for a real version or migrating to Wix.





On 22 October 2013 09:49, Greg Keogh  wrote:

> Well done Stephen, you found another easy to forget dependency between VS
> and the browser, but luckily I didn't stumble over that one. Wix is
> dreadfully complicated. I spent about 8 solid hours getting my first one
> mostly working correctly earlier this year, and thereafter I just clone it
> and pray. I still haven't figured out how to make a Wix web installer that
> prepares the IIS environment, every time I think I have the guts for
> another go, I sit down read the instructions and endless conflicting
> examples and advice and give up with a headache and waste another couple of
> hours. I really miss the vdproj files.
>
> I am suspicious that the InstallShiled Lite will be crippled in some
> subtle and horrible way and I'll just become another drone on their
> marketing lists. I guess I have no choice but to try it.
>
> Greg K
>
>
> On 22 October 2013 12:36, Stephen Price  wrote:
>
>> I imagine in the short term you'd use VS2012 to build your Wix project.
>> Work in VS2013 (and set the Wix project to not build assuming it won't
>> open?)
>>
>> I've not tried VS2013 at work yet. I went to install it and it forced me
>> to upgrade to IE10 (which may or may not be an issue.) the default browser
>> in this environment is IE 8 running in compatibility mode. Forcing me to
>> upgrade my browser was a bit of a concern but it seems running IE10 in IE7
>> mode gives me a similar browser experience as what I'm supposed to be
>> supporting. It's a dependency that has me concerned though. If I have to go
>> back to IE8 then I can't use VS2013 essentially. Browser version tie in?
>> Really?? wow.
>>
>> Can't answer your setup question yet. Not tried it. Would love something
>> simpler than Wix. Wix is like having to learn a whole new programming
>> language... actually, that's simpler than learning Wix...
>>
>>
>> On Tue, Oct 22, 2013 at 7:31 AM, Greg Keogh  wrote:
>>
>>> Folks, I just installed the official (I hope) VS2013 in a fresh Windows
>>> 7 for a bit of a feel around. I haven't look deeply yet but it all looks
>>> fairly okay and I see that some of the old extensions are now built-in.
>>>
>>> Because I was accidentally burned by the removal of vdproj projects from
>>> VS2012 I tried to create a new Setup and Deployment project to see what
>>> would happen. I see the only choice is InstallShield Limited, and I have to
>>> register, download and install it. I've never used it before so I'm
>>> hesitant to do so unless anyone can report that it's great to use. Anyone?
>>>
>>> I started migrating over to WiX which integrated nicely into VS2012, but
>>> it looks like they haven't caught up yet and there is no fresh WiX IDE
>>> plugin.
>>>
>>> So I'm stuck with the choice of something I've never used and something
>>> that lagging behind. What are others here doing for VS2013 setup projects?
>>> Greg K
>>>
>>
>>
>


Re: In praise of T4 code generation

2013-10-15 Thread Nathan Schultz
It just so happens I was looking at this very thing last week.

I'm currently still relying on the old free MyGeneration for code
generation. Nothing like being able to make List and CRUD screens, business
objects, and data-access components within a few minutes from a database
table and a bit of additional metadata. It's most useful for data-driven
apps I find.

I did give CodeSmith a look over (being so similar to MyGeneration), but
decided that I can probably do everything I need with T4.
Like you Greg, I was going to use XML files to hold the metadata; except I
was going to hack together a quick tool that allows me to navigate to a
table in the database, set metadata on fields, and dump out the xml file
for me.

Nathan



On 16 October 2013 11:29, Thomas Koster  wrote:

> Hi group,
>
> On Saturday, 12 October 2013, Greg Keogh wrote:
>
>> ...so I decided to use T4 templates to generate it all. I'm really happy
>> with the results and this post is basically just a reminder that in my
>> opinion, good old fashioned code generation still has a place in the modern
>> world.
>>
>
> I agree that code generation still has its place and would even go as far
> as saying it is *necessary* for most "real world" projects. I do have
> some criticisms of T4 though.
>
> My biggest issue with T4 is that prima facie it is not properly
> integrated, or integrable, into msbuild. A human often has to "Run custom
> tool" or "Transform all templates" manually in the IDE. If you are also
> mucking around with multiple revisions, e.g. using your VCS to bisect or
> even just to update, stale output can easily get out of hand that may
> result in subtly broken builds.
>
> From past Googlings I have only managed to turn up hack solutions, mostly
> three kinds:
>
>1. Hand-write msbuild targets into your csproj that shell out to the
>TextTransform.exe tool in the SDK. This is not the same thing as the VS
>custom tool, resulting generated output that is different from the VS
>TextTemplatingFileGenerator custom tool, if it even works at all. It is too
>easy to write a T4 template that is incompatible with one or other host.
>2. Install the Visual Studio Visualization and Modeling SDK to make
>use of its msbuild targets (VS2010 and up only). This is yet another T4
>host that is different from both the VS custom tool and TextTransform.exe.
>And why burden your developers with such a huge compile-time dependency for
>what should be a trivial msbuild configuration? What about build servers
>that do not even have VS installed?
>3. Commit generated output to your VCS. I put this hack in the same
>basket as committing binaries.
>
> I am very interested in what T4 aficionados do to really make it work in
> large projects. What do you do when you build a fresh checkout of a project
> with many T4 templates? What about automated builds or continuous
> integration servers?
>
> p.s. I experience a homomorphic problem with most other code generation
> tasks in VS, especially DataSets generated from xsd files.
>
> --
> Thomas
>
>
>


Re: Mark II

2013-09-24 Thread Nathan Schultz
I agree... IE is definitely improving rapidly, and I'm also a fan of its
developer tools. Most importantly for me IE6 is no longer the lingua franca
of corporate environments. These days with Windows 7 more or less standard,
IE9 is often now the lowest common denominator, which provides decent HTML5
support.

When it comes to the Surface2, I'm not sure the issue is the technology or
user-interface as much as a critical mass being required. I actually think
the UI stacks up well enough compared to the iPad / Android pads. But it's
market share simply isn't big enough for it to be seen as cool.


On 24 September 2013 16:08, Ian Thomas  wrote:

> Nathan Chere: On a related note, Iā€™ve been focusing on getting up to date
> again with web UI and  funnily enough IE seems to support standards better
> than Chrome without requiring vendor-specific prefixes. Plus the developer
> tools are surprisingly good.
>
> ** **
>
> Wot I sed
>
> ** **
> --
>
> **Ian Thomas**
> Victoria Park, Western Australia
>
> ** **
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:
> ozdotnet-boun...@ozdotnet.com] *On Behalf Of *Nathan Chere
> *Sent:* Tuesday, September 24, 2013 3:06 PM
>
> *To:* ozDotNet
> *Subject:* RE: Mark II
>
> ** **
>
> ā€œthey canā€™t even get IE to conform to the HTML standard..when I develop
> web appsā€¦.IE is always where the problems occurā€
>
> ** **
>
> On a related note, Iā€™ve been focusing on getting up to date again with web
> UI and  funnily enough IE seems to support standards better than Chrome
> without requiring vendor-specific prefixes. Plus the developer tools are
> surprisingly good.
>
> ** **
>
> Haters gonna hate and all that, but it looks like theyā€™re finally getting
> IE right.
>
> ** **
>


Re: Future of .NET

2013-08-21 Thread Nathan Schultz
I don't think Microsoft was ever popular with the Startup community. The
last time I did anything in that area LAMP was all the rage.
I have one mate in the Start-Up community who has used ASP.NET MVC on a
project, and said it stacks up okay against Rails. But he hated Entity
Framework (he said he wasted days trying to get it working properly). He's
since moved on to using Google's Go progamming language.

Certainly I like the direction Microsoft is going by cherry picking the
best out of other technologies (e.g. lamda expressions, dynamic language
run-time, and MVC). Compiler as a Service also seems to have interesting
possibilities. It's certainly not growing stale like COBOL. It's when I
have to help out with Java projects (despite some good libraries), it feels
like a time-warp back to .Net 2.0 days.


On 22 August 2013 09:47, Greg Harris  wrote:

> Microsoft are trying to fix the startup thing with Biz Spark (
> http://www.microsoft.com/bizspark/)
> But when they make super stuff ups like the non support of Silverlight you
> do have ask what the @#$%^&* they are doing !
>
>
> On Thu, Aug 22, 2013 at 11:42 AM, Craig van Nieuwkerk 
> wrote:
>
>> I don't think this will necessarily filter into the enterprise in a big.
>> .NET and Java are both really strong in enterprise, as are Oracle and SQL
>> Server but not that strong in startups. Enterprise and startups have
>> different requirements.
>>
>>
>> On Thu, Aug 22, 2013 at 11:37 AM, Michael Ridland wrote:
>>
>>>
>>> Does this eventually filter into enterprise and if so what does that
>>> mean for .NET?
>>>
>>>
>>>
>>> On Thu, Aug 22, 2013 at 11:35 AM, Michael Ridland wrote:
>>>

 Python / Django / Rails.

 I think you would be hard press for find a .NET job on AngelList. Well
 actually I can see 53 companies out of 3916 that use asp.net.
 https://angel.co/ifttt/jobs

 I'm not bashing just noting my observations and wanted opinions?





 On Thu, Aug 22, 2013 at 11:14 AM, Rob Andrew >>> > wrote:

> Michael,
>
> What is the development platform of choice for the cool kids you are
> seeing?
>
> Just wondering.
>
> Rob
>
>
>
> *- Original Message -*
> *From:* Michael Ridland [mailto:rid...@gmail.com]
> *To:* ozdotnet@ozdotnet.com
> *Sent:* Thu, 22 Aug 2013 10:38:49 +1000
> *Subject:* Future of .NET
>
> Hi
>
> It's clear that in the Start-up and Web communities the choice for
> development platforms is not .NET.
>
> Does this mean eventually this will filter up? I'm wondering what this
> means for the future of .NET?
>
> I once had a developer say .NET is the new COBOL.
>
>

>>>
>>
>


Re: MVC web service question

2013-04-25 Thread Nathan Schultz
Another (possibly simpler) possibility is to do away with the complication
of WCF, and expose your data using WebAPI in MVC.



On 24 April 2013 23:41, Stephen Price  wrote:

> Hey all,
>
> I've done a fair bit of Silverlight and WPF over the last few years and so
> my experience with web services and their usage is from that perspective.
> Usually, when you think of a WCF web service being developed as the back
> end for a Silverlight/WPF client (assuming we're not using Ria services
> here) then your client uses/consumes your Web service.
>
> I'm doing some work in the MVC world now and its dawned on me (after a
> conversation with a colleague) that you could/can have your "server" side
> services being consumed by your MVC model/controllers and the client, being
> web pages in html + javascript would never know. So some of our data now
> needs to be made public to other intranet apps and will be moved into web
> services.
> My question is should those web services be consumed by the MVC app, or
> should we continue to just call the services directly. Not really an issue
> if its all being hosted on the same web server but should someone down the
> track split the web services onto their own box it might make more sense.
>
> I guess it seems weird for me for an app to be developed with data that is
> not exposed via web services. (Silverlight/WPF pretty much is the only way
> to get at your data as all your calls are made from a client). Unless you
> are talking ajax calls or similar from the web browser, all this stuff is
> on the server. Perhaps the answer is "it depends"...
>
> interested in people's thoughts, ideas.
>
> enjoy your long weekend (if you have one)
> cheers,
> Stephen
>


Re: MVC4 URLs

2013-04-12 Thread Nathan Schultz
Instead of using Url.Action, couldn't you just write your own ?


On 12 April 2013 11:17, Greg Low (GregLow.com)  wrote:

> Hi Folks,
>
> ** **
>
> In MVC4, in the code for a controller, whatā€™s the best way to calculate
> the fully qualified URL for a particular action?
>
> ** **
>
> Eg: If I use 
>
> ** **
>
> Url.Action(ā€œSomeActionā€,ā€SomeControllerā€)
>
> ** **
>
> The intellisense for Action says ā€œgets a fully qualified URLā€. However
> what I get back is:
>
> ** **
>
> /SomeController/SomeAction
>
> ** **
>
> What I want is:
>
> ** **
>
> http://www.whateversiteIhit.com/SomeController/SomeAction
> 
>
> ** **
>
> As I need to pass it to an external callback.
>
> ** **
>
> Whatā€™s the best way to do that?
>
> ** **
>
> Regards,
>
> ** **
>
> Greg
>
> ** **
>
> Dr Greg Low
>
> CEO and Principal Mentor
>
> *SQL Down Under***
>
> SQL Server MVP and Microsoft Regional Director
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913fax
> 
>
> Web: www.sqldownunder.com
>
> * *
>
> ** **
>


Re: nTier ASP.NET MVC Application Architecture

2013-03-20 Thread Nathan Schultz
Have you guys ever checked out Modernizr (http://modernizr.com/)?

When it comes to browser compatibility there not only several browsers
to support, but the platform makes a difference too (e.g. a mobile
platform isn't necessarily fully featured).
What Modernizr does is test the browser for what features it supports,
and where a feature is missing you decide whether you want to:
- Do without (i.e. rounded corners might not be important)
- Use a 'PolyFill' which is some java-script that 'fakes' the feature
- Find your own way around using CSS

It's not perfect, but it does make life a lot easier.


On 21 March 2013 10:36, Greg Low (GregLow.com)  wrote:
> Hi Craig,
>
>
>
> Agreed but what intrigues me (or frustrates me) is the real differences in
> even very basic functionality.
>
>
>
> Even sadder are things like it being 2013 and thereā€™s still no common video
> format that you can use, etc.
>
>
>
> Regards,
>
>
>
> Greg
>
>
>
> Dr Greg Low
>
>
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913 fax
>
> SQL Down Under | Web: www.sqldownunder.com
>
>
>
> From: Craig van Nieuwkerk [mailto:crai...@gmail.com]
> Sent: Thursday, 21 March 2013 12:25 PM
> To: g...@greglow.com; ozDotNet
> Subject: Re: nTier ASP.NET MVC Application Architecture
>
>
>
> Getting things to look good on all browsers takes a bit of experience. I
> think the keys are
>
>
>
> - Don't support old browsers (IE6) unless you really have to
>
> - Remember that it doesn't have to look exactly the same on every browser.
> If IE8 doesn't support gradients for example, they don't get them.
>
> - Use common frameworks like Twitter Bootstrap and jQuery that do a lot of
> work abstracting the change out for you.
>
>
>
>
>
> On Thu, Mar 21, 2013 at 12:10 PM, Greg Low (GregLow.com) 
> wrote:
>
> Yep, found the same. They were very useful.
>
>
>
> Now if browsers would only all play the game properly, itā€™d be pretty easy.
> I still find real challenges trying to get things to look even close to the
> same on the different browsers, even with trying different toolkits.
>
>
>
> Regards,
>
>
>
> Greg
>
>
>
> Dr Greg Low
>
>
>
> 1300SQLSQL (1300 775 775) office | +61 419201410 mobileā”‚ +61 3 8676 4913 fax
>
> SQL Down Under | Web: www.sqldownunder.com
>
>
>
> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
> On Behalf Of Jason Roberts
> Sent: Thursday, 21 March 2013 10:31 AM
> To: ozDotNet
> Subject: RE: nTier ASP.NET MVC Application Architecture
>
>
>
> Hi Greg, as well as the fat books, you may find the Pluralsight MVC videos
> helpful too...
>
> Cheers,
> Jason
>
> 
>
> From: Greg Keogh
> Sent: 21/03/2013 6:36 AM
> To: ozDotNet
> Subject: Re: nTier ASP.NET MVC Application Architecture
>
> This discussion comes at a coincidentally interesting time for me, as over
> recent years I have become increasingly irritated by classic ASP.NET. The
> controls are just so heavyweight and the lifecycle of events and postbacks
> is so tangled that you need a doctorate in topology to follow it. All of the
> problems I have ever suffered usually boil down to fighting or
> misunderstanding the huge infrastructure that wraps up such a simple concept
> as a http request. Lord knows how many times I've made a subtle mistake in
> Load, CreateChildControls, PreRender, Render, event handlers, etc, causing
> composite controls or repeater controls to produce gibberish. And then there
> is the misery of trying to integrate JavaScript into the machinery.
>
>
>
> I was just about to visit bookware and buy two fat ASP.NET MVC 4 books,
> obviously because I'm considering that as an alternative. I've read about
> the differences between the frameworks and I've run some tutorials and can
> see immediately that MVC takes you closer to the wire and gives you more
> control over rendering, with the penalty that you have to do more work.
>
>
>
> So I'm wondering if there is anyone here who has migrated to MVC 3/4
> successfully and happily? Is it just substituting one huge complex framework
> for another huge complex one which simply changes the problems from one set
> to another? I worry about the number of files in a large MVC project. Are
> there tools or techniques to integrate scripting more easily? What about
> emitting html that is cross-browser safe or standards compliant? Will MVC
> make these things easier than in class ASP.NET?
>
>
>
> Should I give up on ASP.NET completely and use something like the GTK or the
> confusing family of similar tools to use html5? Can I leave the ASP.NET
> world totally behind and go this way for rich and interactive web sites? Has
> anyone gone this way? Is it just a new form of suffering?
>
>
>
> Greg K
>
>


Re: nTier ASP.NET MVC Application Architecture

2013-03-20 Thread Nathan Schultz
@Greg, IMHO, unless you are practising Test Driven Design, I do not
believe MVC is a necessarily silver bullet over normal ASP.NET. It's
still cleaner, but often there are things that are easier to do in
normal ASP.Net.
If you do practice TDD though, it's an absolute god-send.

Yes, while there are more files in MVC, each has only a single intent
and so are small and easy to understand.
This is different than the mega-long entangled code-behind pages you
often find in standard ASP.NET which often contain everything
including the kitchen sink.
Overall the amount of code is about the same.

I learned MVC the same way I normally learn things: watched a couple
of videos on Channel 9 MSDN so I understood the basics. And then I
jumped right in and wrote a pet-project in it, and looked up topics as
I need them.

I do know one guy who went from ASP.Net to MVC and hated it. MVC just
didn't click for him. Long story short, he got into Ruby On Rails
development soon after, and this caused all of the MVC pieces to fall
into place for him. Now he prefers MVC and sings its praises.

I've written a couple of commercial intranet sites in MVC3 - but both
have been fairly small. Usually all of the larger sites I do all tend
to be based in SharePoint - simply because that is the infrastructure
that tends to be in place in large companies. I don't see any reason
why MVC wouldn't scale well.



On 21 March 2013 09:02, Stephen Price  wrote:
> What would you do without your suffering?
>
> I converted my wife's website from dotnetnuke to an MVC4 website. Most of
> the site was just static pages but I wanted to have the ability to publish
> forsale and forrent for properties. (Real estate site). I have it up on
> Azure and am using code first so it creates the database schema etc. Only
> issue I hit was a little bit of messing about getting the migrate stuff to
> happen automatically when I published it to Azure. Other than that I was
> pleased with how much cleaner things felt when compared with the Asp.net
> world you so accurately described. I actually avoided the web world as much
> as I could due to the development experience. Now, I can actually see myself
> working with it and am learning Javascript, as well as updating my html/css
> skills to the latest and greatest.
> Its a much richer web world now (in the UI/UX sense) which is what put me
> off and sent me to the xaml world. I don't see it as something to be
> actively avoided now.
>
>
> On Thu, Mar 21, 2013 at 6:36 AM, Greg Keogh  wrote:
>>
>> This discussion comes at a coincidentally interesting time for me, as over
>> recent years I have become increasingly irritated by classic ASP.NET. The
>> controls are just so heavyweight and the lifecycle of events and postbacks
>> is so tangled that you need a doctorate in topology to follow it. All of the
>> problems I have ever suffered usually boil down to fighting or
>> misunderstanding the huge infrastructure that wraps up such a simple concept
>> as a http request. Lord knows how many times I've made a subtle mistake in
>> Load, CreateChildControls, PreRender, Render, event handlers, etc, causing
>> composite controls or repeater controls to produce gibberish. And then there
>> is the misery of trying to integrate JavaScript into the machinery.
>>
>> I was just about to visit bookware and buy two fat ASP.NET MVC 4 books,
>> obviously because I'm considering that as an alternative. I've read about
>> the differences between the frameworks and I've run some tutorials and can
>> see immediately that MVC takes you closer to the wire and gives you more
>> control over rendering, with the penalty that you have to do more work.
>>
>> So I'm wondering if there is anyone here who has migrated to MVC 3/4
>> successfully and happily? Is it just substituting one huge complex framework
>> for another huge complex one which simply changes the problems from one set
>> to another? I worry about the number of files in a large MVC project. Are
>> there tools or techniques to integrate scripting more easily? What about
>> emitting html that is cross-browser safe or standards compliant? Will MVC
>> make these things easier than in class ASP.NET?
>>
>> Should I give up on ASP.NET completely and use something like the GTK or
>> the confusing family of similar tools to use html5? Can I leave the ASP.NET
>> world totally behind and go this way for rich and interactive web sites? Has
>> anyone gone this way? Is it just a new form of suffering?
>>
>> Greg K
>
>


Re: nTier ASP.NET MVC Application Architecture

2013-03-19 Thread Nathan Schultz
The last time I wrote an MVC app which included an iPhone client, the
architecture looked similar to yours. Although I would _never_ have a
view model in the WCF project, since a View Model has everything to do
with presentation, and nothing to do with data access. I always have a
Mapper in the MVC project that maps all Models to View Models and
vice-versa.

I also consider a web-service really to be just another data
repository, so I add a DAL in between the MVC Controller and WCF
service. This means a controller is never tied to the web-service, so
is independent of implementation.

Now that MVC4 has the Web API available, I'd be tempted to abolish the
WCF layer so controllers talk directly to the Business Layer.
I would then just write Web API controllers that would service RESTful
requests from a mobile client. This has the advantage of not having to
share a DLL containing your Domain Types and enums.

Regards,

Nathan.


On 20 March 2013 08:11, Grant Molloy  wrote:
> Hi All..
>
> Application architecture is an interesting and regularly debated topic among
> developers..
> Everyone seems to have their own take on it based either purely on theory,
> real world experiences, and as always, a mixture of both.
>
> The application started out as a simple enough hosted ASP.NET MVC
> application where users would visit a website, register, log in, and work
> online.. Simple enough..
> Recently there's been a change where the scope has creeped with "an eye for
> the future", "maximise code re-use", etc..  Fair enough.. Great concept..
>
> My dilemma now is what's the best architecture for this app now that we will
> be (in the future -- when ever that gets here) accessing the system from
> mobile devices, and probably not through the default ASP.NET MVC interface
> that is currently being developed.
> I've been looking around for a decent online example of an nTier ASP.NET MVC
> application architecture, but most of the things I've found are all
> basically single tier where the author accesses the database via DAL
> directly from controllers.
>
> The app has morphed into the following Architecture...
>
> ---  ASP.NET MVC ---
> |  View
> |+ --> MVC Helpers
> ||
> |  Model
> ||
> |  Controller
> |+  --> Constants, Enums & Helpers.. (Separate DLL)
> |+  --> Session Repository  (in MVC Project)
> |+  --> Domain Types (Models & ViewModels) (Separate DLL)
> --- --- --- --- ---
> \/
>  |  WCF Service Call...
> /\
> ---  WCF Services SERVER  ---
> |  WCF Services
> ||
> |  Business Layer
> ||
> |  DAL
> |+ --> Domain Types  (Models & ViewModels) (Separate DLL)  [.. this is
> the same dll as referenced by the Controller above]
> |+ --> Constants, Enums & Helpers.. (Separate DLL)   [.. this is the
> same dll as referenced by the Controller above]
> --- --- --- --- ---
> |
> ---  DATABASE Server ---
> |  Database
> --- --- --- --- ---
>
> This architecture seems to be working fine for now and I know that i'm
> probably going to have to change my WCF services to use a more RESTful
> approach, or implement another more mobile friendly interface, to make it
> easier for mobile connection, but that can happen down the track when i'm
> ready for that part.
> I'm also looking to use SQL CLR Types in the future so that I can be sure
> that the data in reference tables (like say PhoneType, PencilType, CarBrand,
> etc) mirror that exactly as in the Enums in the code.  I've done some
> preliminary investigations into this and it is feasible, but whether it's
> worth it is another issue.
>
> How are people designing their ASP.NET MVC app architecture out there in the
> wild ??
> I would love to hear/see your ideas/architecture..
>
> Grant


RE: Super Sync Sports

2013-03-01 Thread Nathan Schultz
Most commonly data is centralized in a database or somewhere. This is
helpful as it doesn't matter which computer or device a user is using, they
get their data. Accessing this is most easily done server-side, and from a
security perspective means you don't have to open your database up to
anyone on the internet (at least directly). There are JavaScript libraries
that could do this, but imho JavaScript is no where near as nice as c# or
vb.net via the asp.net framework.

In mvc the standard aspx view engine is to my eyes far closer to standard
asp. Mind you in those days I recall using response.write a lot. I find
razor simply has less mark-up, so to my eyes views looks less confusing and
intent is clearer. I found the transition natural to razor, but really it
is preference as some people appreciate the more mark-up in vb.net over c#.


Re: Super Sync Sports

2013-03-01 Thread Nathan Schultz
I'm half way through an ASP MVC4 project at the moment which renders
HTML5. It's going really well so far.
Instead of coming up with my own HTML5 design, I've decided to use
Foundation3's, which has some really nice features in automatically
adapting for mobile devices and tablets.

Similarly to the Twitter bootstrap mentioned before, there's a NuGet
Package to install all of Foundation3 pre-requisites into an MVC4
project: http://www.nuget.org/packages/Foundation3_MVC4
It includes a Master Page and a sample page. The only thing I've done
myself is replaced the default MVC "View" scaffolding templates with
my own based on Foundation3. But replacing these templates is
something I'd normally do anyway.



On 1 March 2013 14:50, Michael Minutillo  wrote:
> @Katherine - It's really not that fair to compare HTML5 and
> ASP.NET/Phalanger. HTML5 (and JavaScript and CSS3) are all client side
> technologies. These pieces combine in the browser to provide a user
> experience but at some stage it seems likely that this experience will need
> to get data or perform some kind of action on the users behalf and at that
> point a server-side technology like ASP.NET/PHP/Node.js (or any of a million
> other choices) is going to be required. ASP.NET (WebForms or MVC) is about
> abstracting away HTTP. A request comes to the server and a response is sent
> back. You can have your MVC View (or your WebForms page) render perfectly
> valid HTML5 and produce the same user experience. You probably could serve
> up the HTML as just plain HTML documents and satisfy the request/response
> parts of the app with WebApi (or ServiceStack or node.js or anything else).
> In fact, from a caching perspective that can be a good idea :)
>
> Michael M. Minutillo
> Indiscriminate Information Sponge
> http://codermike.com
>
>
> On Fri, Mar 1, 2013 at 10:36 AM, Katherine Moss 
> wrote:
>>
>> Well, maybe I should ask this as a question.  I know that most sites built
>> on Microsoft use either ASP.net or Phalanger.  So, be honest; when is
>> ASP.net appropriate and when is plain HTML appropriate?  And also, I think
>> Iā€™ve seen this before; a page on a web site that might have an ASPX
>> extension, but itā€™s really just an HTML page with no code behind. Maybe Iā€™m
>> the dumb one here.
>>
>>
>>
>> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
>> On Behalf Of Mark Thompson
>> Sent: Thursday, February 28, 2013 5:44 PM
>> To: 'Paul Evrat'; 'ozDotNet'
>>
>>
>> Subject: RE: Super Sync Sports
>>
>>
>>
>> Um, I might be missing something, but why not just use Visual Studio as
>> your HTML5 editor? I havenā€™t tested it with the express editions, but
>> according to the Product details I canā€™t see any reason why it wouldnā€™t
>> work:
>>
>>
>>
>>
>> http://www.microsoft.com/visualstudio/eng/products/visual-studio-express-for-web#product-express-web
>>
>>
>>
>> You may also want to have a look at WebMatrix 2 which is also free and
>> supports a whole range of different languages:
>>
>>
>>
>> http://www.microsoft.com/web/webmatrix/
>>
>>
>>
>> -Mark
>>
>>
>>
>> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
>> On Behalf Of Paul Evrat
>> Sent: Thursday, 28 February 2013 4:47 PM
>> To: katherine.m...@gordon.edu; ozdotnet@ozdotnet.com
>> Subject: RE: Super Sync Sports
>>
>>
>>
>>
>>
>> I'm asking if you can mix html5 features from an editor then programme
>> .net into it for the back end functionality? Also if there is a good and
>> free html5 editor for the purpose. Do you can judge my level, I'm using vb
>> express / asp.net ecpress edition ..
>>
>>
>>
>>
>>
>>
>> Katherine Moss  wrote:
>>
>> By the way, where does ASP.net come into that?  Writing a site in all HTML
>> with no .net code is ... primitive.
>>
>>
>>
>> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
>> On Behalf Of Paul Evrat
>> Sent: Wednesday, February 27, 2013 8:30 PM
>> To: ozdotnet@ozdotnet.com
>> Subject: Re: Super Sync Sports
>>
>>
>>
>>
>>
>> Immersed in snow on my android phone??!! Amateur question - is there a
>> html5 editor (pref free) that can integrate with visual studio for
>> programming? Or is expressions the only thing?
>>
>>
>>
>>
>>
>>
>> Preet Sangha  wrote:
>>
>> Bloody interesting look at the future of immersive computing.
>>
>>
>>
>> On 28 February 2013 11:33, David Connors  wrote:
>>
>> All HTML5. This is amazing.
>>
>>
>>
>> http://www.chrome.com/supersyncsports/
>>
>>
>>
>> --
>>
>> David Connors
>>
>> da...@connors.com | M +61 417 189 363
>>
>> Download my v-card: https://www.codify.com/cards/davidconnors
>>
>> Follow me on Twitter: https://www.twitter.com/davidconnors
>>
>> Connect with me on LinkedIn: http://au.linkedin.com/in/davidjohnconnors
>>
>>
>>
>>
>>
>> --
>> regards,
>> Preet, Overlooking the Ocean, Auckland
>
>


Re: New Web API project

2013-01-31 Thread Nathan Schultz
There are advantages of using MVC for open-source software:
 - You don't have to deal with the web-forms 'generated' naming
conventions of rendered HTML which can make it hard to integrate with
JavaScript frameworks
 - You have greater control over the HTML, which means it's easier to
implement open-source HTML frameworks such as HTML5 Boiler Plate, or
Foundation 3.
 - You're not reliant on ASP's rendering of server controls, so it's
easier to write standards compliant HTML
 - There is better separation of concerns between the view code and
logic, which leads to better transparency - always helpful when
working in disparate teams like in the Open Source community.
 - Testability: Unlike Web-Forms that are difficult to automatically
test; MVC makes testing frameworks first-class citizens, and the boon
from this cannot be understated:
. You can regression test at the click of a button - almost
essential when others are poking around with your code.
. It can also be used as a 'contract' when working with other
developers - you know what is implemented and working, and what is
not.
. I find Testable code is also better designed code: you think
about separation of concerns and dependencies much more
. There's nothing like getting to 'code freeze' and finding you
have to do a re-design due to uncovering a fundamental flaw. With a
test suite to back you up, re-factoring your design is far less scary.



On 1 February 2013 13:47, Heinrich Breedt  wrote:
> I think you have the wrong idea about MVC.
> Razor Views specifically: It all gets executed server side. You certainly
> dont have to use it. These days I do a lot of knockout pages with hardly any
> razor in them, sometimes not at all.
> It can look a lot like old asp i guess, and with all things it can lead to
> spaghetti code. But I much prefer to be close to the metal with my html.
> Much better than serverside controls and writing html inside page response.
> And if i never have to deal with the page lifecycle it will be too soon.
>
>
> On Fri, Feb 1, 2013 at 3:19 PM, Katherine Moss 
> wrote:
>>
>> Thank you for the clarification, guys.  My thing, since Iā€™m planning to
>> become an open source developer, still, I think that even if I am developing
>> for open source, if I am happy, then Iā€™ll keep one project in one technology
>> if it is working for me, and then Iā€™ll offer a port of it in the other
>> platform or something like that so that people can choose which project they
>> feel more comfortable using.  Or Iā€™ll just choose whichever one works.  I
>> feel that there is no reason to change a project that is working just for
>> the heck of it, but thatā€™s me.  But, the good news is that it doesnā€™t look
>> like YAF will be moving since there is now a rival forum written in ASP.net
>> MVC right now.  So it would be stupid for them to do that.  And considering
>> they are commercial as well.  And speaking of ASP.net MVC though, I have
>> noticed that not many people use the standard ASPX view, do they?  I mean,
>> whatā€™s so special about razor if razor is sort of backtracking to the ASP
>> days?  I mean, C# within HTML tags?  Come on, people.  Go back to VBScript
>> if youā€™re going to do that.
>>
>>
>>
>> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
>> On Behalf Of Heinrich B
>> Sent: Thursday, January 31, 2013 11:25 PM
>>
>>
>> To: ozDotNet
>> Subject: Re: New Web API project
>>
>>
>>
>> this might help:
>> http://www.west-wind.com/weblog/posts/2012/Aug/07/Where-does-ASPNET-Web-API-Fit
>>
>>
>>
>> On Fri, Feb 1, 2013 at 12:35 PM, Katherine Moss
>>  wrote:
>>
>> Yes, WebAPI is wrapped inside of MVC4.  And thereā€™s another thing that
>> just makes me mad; when people want to rewrite their application for the
>> heck of it just so that they can be deployed under the latest fad.  The
>> folks from Yet Another Forum are now saying that their project could be
>> moved and rewritten as ASP.net MVC too, and for what?  To look cool?
>> Apparently, and whatā€™s wrong with a project that is written in Web Forms and
>> doing fine?  Iā€™m sorry, but I donā€™t get it.  And once that changes, if it
>> does, other folks who use YAF will be screwed including those at Sueetie,
>> who make a great product all based on Web Forms.  Though web forms and MVC
>> can work together, though itā€™s not as simple as one would think.  If you
>> want MVC, then use Web Forms MVP.  And who said WCF is pointless middleware?
>> Isnā€™t it a good way to create web services?  And if not for WCF, whatā€™s
>> next?  Back to ASMX from 2006?  Come on!  Anyway, guys, Iā€™m sorry for the
>> rant, but I had to get it out somewhere, right?
>>
>>
>>
>> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
>> On Behalf Of Greg Keogh
>> Sent: Thursday, January 31, 2013 7:50 PM
>> To: ozDotNet
>> Subject: Re: New Web API project
>>
>>
>>
>> Thanks, glad to know I'm not alone, that link looks sensible and will save
>> a lot of suffering -- Greg
>>
>>
>>
>>

Re: New Web API project

2013-01-31 Thread Nathan Schultz
Exactly... I know for my own hobby projects I like to trial new
technologies, so I can get a feel for them, and learn the in's and
out's of them.
And more than once I have rewritten one in a new technology for no
other purpose than to familiarize myself with it.

I do admit that I quite like the MVC platform, and I find it supports
TDD much better. And I naturally gravitate to Web API over WCF (which
I feel is overly complicated for normal web-services).

When it comes to commercial projects, the opposite is true; I try to
keep it stable and conservative, and I'd select WCF over Web API due
to the difference in maturity.



On 1 February 2013 10:43, Craig van Nieuwkerk  wrote:
> I think YAF is essentially a hobby for the guys who are developing it, so
> the chances of them changing to different (cooler) technology is much higher
> than products that have commercial realities to deal with. Buyer beware I
> guess.
>
>
> On Fri, Feb 1, 2013 at 1:35 PM, Katherine Moss 
> wrote:
>>
>> Yes, WebAPI is wrapped inside of MVC4.  And thereā€™s another thing that
>> just makes me mad; when people want to rewrite their application for the
>> heck of it just so that they can be deployed under the latest fad.  The
>> folks from Yet Another Forum are now saying that their project could be
>> moved and rewritten as ASP.net MVC too, and for what?  To look cool?
>> Apparently, and whatā€™s wrong with a project that is written in Web Forms and
>> doing fine?  Iā€™m sorry, but I donā€™t get it.  And once that changes, if it
>> does, other folks who use YAF will be screwed including those at Sueetie,
>> who make a great product all based on Web Forms.  Though web forms and MVC
>> can work together, though itā€™s not as simple as one would think.  If you
>> want MVC, then use Web Forms MVP.  And who said WCF is pointless middleware?
>> Isnā€™t it a good way to create web services?  And if not for WCF, whatā€™s
>> next?  Back to ASMX from 2006?  Come on!  Anyway, guys, Iā€™m sorry for the
>> rant, but I had to get it out somewhere, right?
>>
>>
>>
>> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
>> On Behalf Of Greg Keogh
>> Sent: Thursday, January 31, 2013 7:50 PM
>> To: ozDotNet
>> Subject: Re: New Web API project
>>
>>
>>
>> Thanks, glad to know I'm not alone, that link looks sensible and will save
>> a lot of suffering -- Greg
>
>


Re: Colour Returns to Visual Studio 11 User Interface

2012-05-10 Thread Nathan Schultz
I don't know what they're thinking with the all-caps menu. There's barely
enough horizontal real-estate as it is once you consider a couple of 3rd
party menus will find their way in. And all-caps makes it both harder to
read, and yet more distracting away from the real-work going on.

The lighter grey with a tinge of blue is an improvement over the beta, but
to be honest I prefer the VS2010 look overall.

I'm not a fan of metro, being in the unenviable position of owning a
Windows Phone 7 - too many 'tiles' look the same - there's not enough
contrast between many apps for my liking. I find the 'metro' look nothing
more than a "Fisher Price" experiment for kids to be honest, and even after
6 months still yearn for my old iPhone back. Not to mention the meshing of
facebook contacts with business contacts has destroyed any semblance of
rationality to my contacts list; without the search button the phone would
be near on unusable.

Surprisingly I'm not so against the Ribbon - it took me a little getting
used to it, but found the context sensitivity to be a good thing.


On 10 May 2012 06:18, Arjang Assadi  wrote:

> Would they be leaving the current scheme as a choice for release? So
> people can choose to have more color or not, rather than everybody having
> it one way or other.
> Maybe instead of soft gray background we be able to choose soft green/
> blue etc
>
> Regards
>
> Arjang
>
> On 9 May 2012 10:59, Ian Thomas  wrote:
>
>> ** ** **
>>
>> ** **
>>
>> ** **
>>  --
>>
>> **Ian Thomas**
>> Victoria Park, Western Australia
>>
>> ** **
>>
>
>


Re: Other developers don't like dependency injection

2011-10-26 Thread Nathan Schultz
I'd probably sell it differently.

Instead of saying you "don't know" where the objects come from, say that
objects come from a centrally configured location (since in practice the
objects are usually defined in configuration, or in bootstrap code).

And sell cheaper maintenance costs (modular design, easy to refactor, easy
to replace components, easier to extend, fewer system wide bugs, helps with
a cleaner implementation, less spaghetti code, etc).

To get it past some of the "old hats" here I temporarily changed
terminology. Dependency Injection (let alone IoC) would draw blank looks,
but say "plug-in system", and they've all rolled one before and are
comfortable with the concept.



On Thu, Oct 27, 2011 at 11:56 AM, Stephen Price wrote:

> Try not to think of it as right and wrong. Alt.net is a guide. It can
> help you find the path.
>
> On Thu, Oct 27, 2011 at 11:15 AM, Michael Ridland 
> wrote:
> >
> > So I've been working with this client for a few years now, all the other
> > developers aren't alt.net type. They're older and just love their RAD,
> User
> > Controls, coming from a dephi background.
> > It took me a while but finally I got them doing unit testing, but still
> not
> > as much as I would like.
> > Today I also tried to convince them(the development manager) to
> > use dependency injection but he said it was over complicating things and
> > it's confusing because you didn't know where the object came from. I
> argued
> > for decoupling and that objects shouldn't need to know
> > where dependences came from or how they were instantiated, objects should
> > only worry about their unit of work.
> > Am I wrong?
> >
>


Re: SharePoint client object model for Site[Collections]

2011-09-20 Thread Nathan Schultz
Hi Steve,

In regards to the Powershell question - I'm reading between the lines a bit
about your exact requirements. You do not have to use the Sharepoint 2010
Management Shell. The only difference between Windows Powershell and the
Sharepoint 2010 Management Shell is the Sharepoint providers loaded by
default (Windows.Sharepoint.Powershell).

The same can be achieved in normal Windows Powershell script by adding the
following to the top of your script:

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction "SilentlyContinue"

The error action is added in case the script IS run through the Sharepoint
2010 Management Shell - it won't bomb out.

Windows.Sharepoint.Powershell is installed with Sharepoint Foundation, but
what might be a sticking point to you is that AFAIK most of the Sharepoint
powershell commandlets will only work with locally installed Sharepoint
Farms (ie, I do not believe you can run them across the network). I'm not
sure why this is an issue - no administrator I know would let a dev even
walk within spitting distance of any server they maintain ;-) All the same,
you can create comprehensive Powershell installation / update / rollback
scripts for your Sharepoint Administrator to run in environments (eg, Prod)
where you typically won't have access.

Regards,

Nathan.


On Tue, Sep 20, 2011 at 1:04 PM, Peter Arvoll wrote:

> Hi Steve
>
> I have been looking into working with SharePoint sites today (via the web
> services) and I think that I read somewhere that the object model only works
> if you're running on the machine where SharePoint is hosted.
>
> Throwing the question to a wider audience, I have a client who wants to
> move from Exchange group calendars to SharePoint but it seems that to have
> to migrate across I need to add the meeting to the Calendar list (in order
> to display in calendar view) and then create (and link) a meeting workspace
> in order to manage attendees and attachments.
>
> Am I missing something?
>
> Thanks
> Peter
>
>
> On 20 September 2011 13:28, Stephen Liedig  wrote:
>
>> I think we sorted this. We are using the Admin web services to create the
>> site. We then plan to use the client object model to change the site
>> properties. This should give us what we need.
>>
>> Regards,
>>
>> Steve
>>
>>
>> On 20 September 2011 09:28, Stephen Liedig  wrote:
>>
>>> Hi all,
>>>
>>> not sure if anyone can help me with this. We need to find a way to be
>>> able to create a SharePoint 2010 Site (Site Collection) only using the
>>> client object model. So far we've managed to create a SP Web, no problem,
>>> but because of the architectural requirements each of these needs a must be
>>> contained in its own Site. At this stage, we want to avoid having to deploy
>>> server side components to do this but realise we may need to change our
>>> approach if using the client object model is not possible. Also, is it
>>> possible to use PowerShell scripts outside of the SharePoint environment?
>>> Any help would be appreciated.
>>>
>>> Cheers,
>>>
>>> Steve
>>>
>>> PS. I know there is probably a SharePoint list but I'm not a member, I
>>> was hoping there a couple of SP experts on this list.
>>>
>>>
>>
>


Re: Web Development

2011-08-09 Thread Nathan Schultz
I would advocate doing your own project or an open source project in your
spare time - just so you have something to put on your CV.

While there are some aspects of development from winforms development that
can be transferred over (such as general .Net knowledge), it will still take
some time to become proficient in ASP.Net (and web development in general).

Years ago I started off doing purely WinForms, and my first couple of
ASP.Net projects were... well... not fantastic.


On Wed, Aug 10, 2011 at 10:26 AM, Simon Kuldin <
sim...@prism-solutions.com.au> wrote:

> I meant **un**employable
>
> ** **
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:
> ozdotnet-boun...@ozdotnet.com] *On Behalf Of *Simon Kuldin
> *Sent:* Wednesday, 10 August 2011 12:18 PM
> *To:* ozdotnet@ozdotnet.com
> *Subject:* Web Development
>
> ** **
>
> Hey there everyone,
>
> ** **
>
> It seems to me that almost all of the Dot Net jobs advertised out there,
> require a decent level of ASP.NET experience.  Does that mean Iā€™m pretty
> much employable since I have little to no ASP.NET experience, despite my
> level of Dot Net experience in WinForms and Compact Framework development?
> 
>
> ** **
>
> I am studying ASP.NET when I can, but donā€™t have any real work experience
> with it yet.
>
> ** **
>
> I feel like Iā€™m fighting an uphill battle to try and get into a full-time
> Dot Net development role (Iā€™m only doing Dot Net development as a portion of
> my job at the moment).
>


Re: System.Data classes and List

2011-07-20 Thread Nathan Schultz
My love affair with datasets fell away as I improved as a programmer...

We initially used data-sets in a failing project years ago early in the .Net
days. It was a nightmare to maintain - and the underlying database schema
wasn't settled. Due to the lack of strong typing in data-sets a change in
column names often went undetected and caused all sorts of issues
down-stream. Then there were several memory leaks that datasets were
responsible for. And datasets are so heavy - our application was more memory
intensive than Outlook (and that's saying a lot) - and we had many
complaints from users. We also found they caused deadlocks in the database
even with just a hundred users or so.

Never again - we went back to straight ADO.Net into plain old class objects
(POCOs), and the simplicity was a breath of fresh air. Initially we missed
the niceties of datasets - get / set xml, sorting, and filtering. We quickly
created helper classes / code snippets to add these things. Data-binding has
never been particularly compelling in .Net (maybe I'm just still scarred
from the VB6 days?) - but it simply never 'worked' with validation anyway.
And we realized the real issue was proper separation of concerns - we were
linking data-base objects directly to the UI; although admittedly
client/server had been all the rage in the years before. We'd written a
'data-driven application' that Microsoft seemed to railroad you into
(probably to keep it RAD like), but we weren't designing things properly.
Essentially the application just seemed 'clunky'.

With a major version release we redesigned out software from scratch with
proper logical layers and separated concerns. While it initially took longer
to develop, in the long run we had much more agile and maintainable code.
Our IT manager even made a point to other teams that our software's
maintenance cost was the lowest even though our project was one of the
largest.

I then left the company onto greener pastures... but a funny thing happened
the other day. I met a lady in the pub who turned out was one of that
companies clients. I mentioned I wrote that piece of software, and she said
that it's still used today, and holds its own - even though it must be over
5 years old now.


Back on topic: These days with LINQ I'm not sure datasets give you
functionally more anyway. These days I still tend to use LINQ2SQL for its
straight-forward data-access although I'm about to try my first project with
EF4.1 code-first. I wouldn't dream of going back to datasets.

Nathan.



On Thu, Jul 21, 2011 at 8:24 AM, Greg Keogh  wrote:

> Chaps, your comments are interesting and perhaps make me feel not so guilty
> for using System.Data classes in these modern times.
>
> ** **
>
> Iā€™ve only used netTiers and EF4 in recent years, but deep down they all run
> a SELECT statement, loop through the rows and move the columns into
> collections of objects with matching property names. In the early .NET years
> I wrote my own code to do that, and I know VB6 developers who are still
> doing it.
>
> ** **
>
> The classes and collections returned by netTiers implemented all of the
> interfaces I like in System.Data. The EF4 equivalents do not seem to. So
> where does that leave me? I fall back to the ā€œconvenienceā€ of System.Data
> and I feel guilty, but perhaps I shouldnā€™t. Maybe no one is game to admit
> that EF4 is a bit immature.
>
> ** **
>
> Iā€™ve had no reply from the EF4 MSDN forum yet.
>
> ** **
>
> I will continue to send DataSets to pick lists and grids in my UI. However,
> I do perform updates and deletes using the EF4 entities and context, and Iā€™m
> reasonably happy with the way it works. Itā€™s tedious to eager load an entity
> with non-tracking, send it up to the UI, edit or delete it, then attach it
> back to the context and call ApplyCurrentValues on all the entities before
> saving it.
>
> ** **
>
> netTiers is not regarded as a big player in the ORM field, but my
> experience so far is that netTiers is generally better than EF4 because its
> entity classes and collections are completely self-tracking, and most
> importantly, there is no concept of a context. The only reason Iā€™m learning
> EF4 and using it is because itā€™s ā€œthe latest greatest thingā€. I guess
> marketing does work!
>
> ** **
>
> Greg
>


Re: [OT] Cloud backup

2011-05-31 Thread Nathan Schultz
For backup I use McAfee Online Backup - although it's probably neither the
cheapest nor the best. It works for me though and it runs invisibly.

I also use synchronization services; which offer some backup features (your
data is never in any one place). I used to use Live Mesh beta, but had some
problems where it would get confused with large numbers of files, and I
would sometimes lose the latest versions. So it wasn't much good for code
files unless I zipped them into a single file - and then it coped better.
The advantage was with it that you can turn any of your windows folders into
a synchronized folder, unlike Dropbox where there is just one synchronized
folder tree.

Form my understanding Live Mesh beta has been replaced with Windows Live
Mesh - but since it dropped Windows XP support (my work machine is still
XP), so I gave it the flick.

These days I'm using Dropbox - where there's more copying involved (due to
having only one synchronized folder tree), but I've written scripts to copy
my work into the Dropbox folder at the end of the day. Sometimes I forget to
run it though :-/ Dropbox is free for up to 2GB of data - and has some
rudimentary versioning. It is my understanding it's simply a SVN server, and
all Dropbox is, is a SVN client. It's been reliable at least. Dropbox is
also in the news a lot as it became apparent that their employees have
access to your data (even though they initially denied it).

Option number 3, is it is fairly trivial to host your own SVN server over
the internet, so long as you have a provider that can host it.




On Wed, Jun 1, 2011 at 9:33 AM, Stephen Price wrote:

> For you, its the space. I guess for them, its being able to target
> different clients. Pay for what you need or pay for what you can
> afford. I went for the top plan because of the more machines.
>
> Then again I tend to buy lots of software tools. Some people go out
> and spend thousands on their hardware and then refuse to spend a
> single cent on software (usually because they want something for
> nothing, which in the software world can sometimes be found). I don't
> get that. I look at how long it would have taken me to write the
> software (assuming I even have the skills for what the software does)
> and then see the measly $200 or whatever as being a bargin.
> Time is more valuable to me than money. I have less time than money
> and I seem to spend all my time converting it into money. :)
>
> On Wed, Jun 1, 2011 at 8:30 AM, Greg Keogh  wrote:
> > Stephen, Crashplan looked great until I noticed they have some kind of
> > per-machine restriction on all but the top plan. This make no sense, as
> if I
> > buy the space, then I expect to be able to use from absa-bloody-lutely
> > anywhere, I mean, it's the space that counts, not where it comes from --
> > Greg
> >
> >
>


Re: Dynamic ORM?

2011-05-08 Thread Nathan Schultz
My solution can create classes based on the LINQ2SQL active records, and
CRUD ASP.NET screens for those. I only really use it for Admin / Reference
screens though, since your object model and database schema are often
fundamentally at odds (since they [should] represent different things).

As for Grant's Stored Proc idea - my old code template schema's did a
similar thing - and it is slightly faster, and there are security advantages
(individual stored procs can be given different rights). But I'm hooked to
the flexibility that LINQ provides, and the bells and whistles like lazy
loading.




On Sun, May 8, 2011 at 11:44 AM, Grant Molloy  wrote:

> Performance nat an issue.. Test harness proves its quicker than linq
> for same query (single and multi record).  it also returns multi
> resultsets with good speed too. 10 result sets from 1 stored proc in
> 20 millisecs.
>
> On 5/8/11, Mark Ryall  wrote:
> > I've heard of a few projects that needed to do something like this
> (mingle
> > is one that comes to mind) where the structure of your entities can be
> > modified at runtime.  It gets really complicated very quickly -
> especially
> > in getting the implementation to perform adequately.
> >
> > This seems a better fit for a non relational database such as mongodb,
> > ravendb, couchdb etc. if that's an available option.
> >
> > On Fri, May 6, 2011 at 12:06 AM, Anthony  wrote:
> >
> >> Anyone aware of a dynamic orm software.  Been using llblgen for years
> and
> >> finding the need for a dynamic orm.
> >>
> >>
> >>
> >> I find that some database create custom fields etc at runtime which do
> not
> >> become visible to the ORM until I re-apply the ORM schema.   If I
> >> re-apply
> >> orm to a db with  customer fields, then it makes the  orm code specific
> to
> >> one environmentā€¦.
> >>
> >>
> >>
> >> regards
> >>
> >> Anthony (*12QWERNB*)
> >>
> >>
> >>
> >>
> >>
> >
>
> --
> Sent from my mobile device
>


Re: Dynamic ORM?

2011-05-06 Thread Nathan Schultz
I don't know of any dynamic ORMs.

I do script the creation of my LINQ2SQL schema, so once the underlying
structure changes it's a matter of running an update script.
Also a good suite of unit-tests of your mappings is also helpful as it will
catch breaking changes you've missed.




On Fri, May 6, 2011 at 6:51 AM, Noon Silk  wrote:

> > Anyone aware of a dynamic orm software.  Been using llblgen for years and
> > finding the need for a dynamic orm.
> >
> > I find that some database create custom fields etc at runtime which do
> not
> > become visible to the ORM until I re-apply the ORM schema.   If I
>  re-apply
> > orm to a db with  customer fields, then it makes the  orm code specific
> to
> > one environment..
>
> Well, it's an interesting idea but you're not going to get this in a
> typed way, in c#, right? Because it will require type specification
> somewhere ...
>
> Why are you creating custom fields at runtime? I must admit I've never
> seen that in a db like MS SQL ...
>
> --
> Noon Silk
>
> http://dnoondt.wordpress.com/  (Noon Silk) | http://www.mirios.com.au:8081>
>
> Fancy a quantum lunch?
> http://www.mirios.com.au:8081/index.php?title=Quantum_Lunch
>
> "Every morning when I wake up, I experience an exquisite joy ā€” the joy
> of being this signature."
>


Re: HTML vs Silverlight - comparative effort?

2011-03-29 Thread Nathan Schultz
I think the 80/20 rule applies here. 80% of apps can be developed using
today's standards. 20% may require something more 'exotic' such as
Silverlight / Flash.

The problem with open standards is that they're lagging behind the curve (in
some instances by a long way). For example, HTML5 is missing native
multi-touch support. I believe there's room at the bleeding edge for
technologies like Silverlight and Flash


On Tue, Mar 29, 2011 at 10:01 PM, Paul Stovell wrote:

> Just to add my 2c, it's not necessarily an "or" choice. You could build 90%
> of the app as a web app (which for webby-things, will be much faster -
> Silverlight/XAML has nothing on Razor/MVC/HTML/CSS). Then if you hit
> something that's difficult to do in pure HTML/JS, build that 10% in
> Silverlight.
>
>
>
> Personally, given the power of JS and modern browsers, I'd find it pretty
> hard to justify using Silverlight for anything web/intranet. The only good
> case I've seen is where we some C# classes and needed to use them on the
> server and client, and there was no nice way to convert the code to
> JavaScript (though I wonder if expression trees in .NET 4.0 could have
> helped there). Even then, doing it over, having UI in HTML and using
> JavaScript/SL interop might have worked better.
>
>
>
> Paul
>
>
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:
> ozdotnet-boun...@ozdotnet.com] *On Behalf Of *James Chapman-Smith
> *Sent:* Tuesday, 29 March 2011 12:32 PM
> *To:* 'ozDotNet'
> *Subject:* HTML vs Silverlight - comparative effort?
>
>
>
> Hi folks,
>
>
>
> I got asked a question today that I don't really have the experience to
> answer and was hoping someone here could help.
>
>
>
> If I'm going to develop a new "web-based" application in HTML or
> Silverlight, what would the comparative effort be like? And really, what
> kind of pros & cons are worth evaluating?
>
>
>
> By HTML I am thinking ASP.NET MVC, but it could be something else
> ".NET"-ish.
>
>
>
> Cheers.
>
>
>
> James.
>


Re: Linq Select from an array where element indexes satisfy a criteria

2011-03-03 Thread Nathan Schultz
They're the numbers where their index is even (not the number itself).

Try James' example in LINQPad (or a console application). The results will
be:

evens: 1, 2, 3, 6
igt2: 3, 3, 5, 6





On Fri, Mar 4, 2011 at 11:21 AM, Arjang Assadi wrote:

> James,
>
> are evens, even numbers or the numbers that their index is even?
> i.e. 1,2,3,6
>
> Thank you
>
> Arjang
>
> On 4 March 2011 13:32, James Chapman-Smith  wrote:
> > Easy.
> >
> >
> >
> > var numbers = new [] { 1, 2, 2, 3, 3, 5, 6, };
> >
> >
> >
> > var evens = numbers.Where((n, i) => i % 2 == 0);
> >
> >
> >
> > var igt2 = numbers.Where((n, i) => i > 2);
> >
> >
> >
> > For this last one you could just go with `Skip(...)`.
> >
> >
> >
> > var igt2= numbers.Skip(3);
> >
> >
> >
> > Cheers.
> >
> >
> >
> > James.
> >
> >
> >
> > -Original Message-
> > From: ozdotnet-boun...@ozdotnet.com [mailto:
> ozdotnet-boun...@ozdotnet.com]
> > On Behalf Of Arjang Assadi
> > Sent: Friday, 4 March 2011 11:49
> > To: ozDotNet
> > Subject: Linq Select from an array where element indexes satisfy a
> criteria
> >
> >
> >
> > Given an array, how can a subset of it be selected based on
> >
> > restriction on the elements index?
> >
> >
> >
> > e.g. given the array numbers [1,2,2,3,3,5,6];
> >
> >
> >
> > from number in numbers where ( number is even indexed ) select number
> >
> >
> >
> > or
> >
> >
> >
> > from number in numbers where ( number index is greater than 2 ) select
> > number
> >
> >
> >
> > Regards
> >
> >
> >
> >
> >
> > Arjang
>


Re: Linq (To Objects) Update ( like sql )

2011-02-24 Thread Nathan Schultz
List already has the foreach method.
So you can do this:

nameList.Where(p => p.FirstName == "Pater")
 .ToList()
 .ForEach(p => p.FirstName = "Peter");



On Fri, Feb 25, 2011 at 10:22 AM, James Chapman-Smith <
ja...@enigmativity.com> wrote:

> Hi Arjang,
>
> Have you installed the `Reactive Extensions for .Net (Rx)`
> (http://social.msdn.microsoft.com/Forums/en-US/rx/threads)?
>
> It gives you, not only the support for `IObservable/IObserver` for
> push collections and a back-port of the TPL for .NET 3.5SP1, but it also
> gives you a ton of extensions for `IEnumerable`.
>
> You get two extension methods that answer your question.
>
> `.Run(Action)` lets you write this code:
>
> var names =
>from p in nameList
>where p.FirstName == "Pater"
> select p;
>
> names.Run(p => p.FirstName = "Peter");
>
> `.Do(Action)` works like `.Run(Action)` but it returns the list so
> can
> be used inside a LINQ query like this:
>
> var names =
>(from p in nameList
> where p.FirstName == "Pater"
>  select p).Do(p => p.FirstName = "Peter");
>
> or:
>
> var names = nameList
> .Where(p => p.FirstName == "Pater")
> .Do(p => p.FirstName = "Peter");
>
> Cheers.
>
> James.
>
> -Original Message-
> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
> On Behalf Of Arjang Assadi
> Sent: Friday, 25 February 2011 12:07
> To: ozDotNet
> Subject: Linq (To Objects) Update ( like sql )
>
> When using Linq to Objects, is it possible to change a property value
> on all the selected values?
> I am NOT using Linq to sql, I have list items and want to change value
> of some properties depending on names e.g.
>
> //typo in name entry, can not change the persisted data, instead
> correcting in code, there are no ID's to create a correction table for
> specific records, just having to hard code it heuristics.
>
> var names = from p in nameList
>  where p.FirstName == "Pater"
>  set p.FirstName = "Peter"
>  select p;
>
> Regards
>
> Arjang
>
>


Re: Excel in .NET (C# or VB)

2011-02-21 Thread Nathan Schultz
Ack... I remember now. Yes, you're right, Noonie. It's a combination of
things:

According to the KB Article:

*Setting IMEX=1 tells the driver to use Import mode. In this state, the
registry setting ImportMixedTypes=Text will be noticed. This forces mixed
data to be converted to text. For this to work reliably, you may also have
to modify the registry setting, TypeGuessRows=8. The ISAM driver by default
looks at the first eight rows and from that sampling determines the
datatype. If this eight row sampling is all numeric, then setting IMEX=1
will not convert the default datatype to Text; it will remain numeric.
*

So it's a combination of IMEX=1 and increasing the TypeGuessRows in the
registry to get the data-types right.




On Tue, Feb 22, 2011 at 12:00 PM, noonie  wrote:

> Nathan,
>
> The IMEX=1 setting won't get the driver to treat "all" fields as strings
> only "mixed" data in a column. If the scanned rows show no mixed data types
> the driver will still go ahead an "guess" a data type other than string.
>
> See: <http://support.microsoft.com/kb/194124>
>
> --
> Regards,
> noonie
>
>
> On 22 February 2011 12:39, Nathan Schultz  wrote:
>
>> I've used OleDB several times in production systems, and so long as you
>> know of a few quirks it's fine.
>> It determines data-types from the first 8 rows by default (not 5) and I
>> think there is a registry hack that can increase this.
>>
>> Personally I just add IMEX=1 to the connection string during read, and
>> this tells OleDB to import all fields as strings. I can then use my
>> application to cast the fields to their appropriate types.
>>
>>
>>
>>  On Mon, Feb 21, 2011 at 3:49 PM,  wrote:
>>
>>> Hi,
>>>
>>> Oledb will give you loads of problems, the data types in the spreadsheet
>>> are defined by the best match of the first 5 rows or so. Really not good.
>>>
>>> If you were just reading the file then nexcel is my preferred way and it
>>> works on asp.net with no hassle.
>>>
>>> But as you are updating there isn't a simple solution at all.
>>>
>>> Davy
>>> "When all you have is a hammer, every problem looks like a nail." I feel
>>> much the same way about xml
>>>
>>> -Original Message-
>>> From: "etmilis" 
>>> Sender: ozdotnet-boun...@ozdotnet.com
>>> Date: Mon, 21 Feb 2011 16:02:27
>>> To: 'ozDotNet'
>>> Reply-To: ozDotNet 
>>> Subject: RE: Excel in .NET (C# or VB)
>>>
>>> Thanks Craig and Arjang,
>>>
>>> Concern noted.
>>>
>>> We are asked to automate/integrate files (i.e. invoice, inventory, etc.)
>>> received from customer (in Excel via email) with internal system and need
>>> to
>>> update some databases/tables too.
>>> We will also need to send back the updated Excel file (original file +
>>> added/updated columns) to the customers.
>>>
>>> It looks like there are 2 ways to do it, using the Excel object model or
>>> the
>>> OLEDB, though I am leaning more to the object model.
>>> So, is it a good design if we create a service or a .net assembly with
>>> scheduled job to it? The frequency is pretty low, a few times in a day
>>> during business hours only.
>>>
>>> Cheers,
>>> Etmilis
>>>
>>> -Original Message-
>>> From: ozdotnet-boun...@ozdotnet.com [mailto:
>>> ozdotnet-boun...@ozdotnet.com]
>>> On Behalf Of Arjang Assadi
>>> Sent: Monday, 21 February 2011 3:37 PM
>>> To: ozDotNet
>>> Subject: Re: Excel in .NET (C# or VB)
>>>
>>> Hi Etmilis,
>>>
>>> as Craig said ( also from personal experience ), do not try reading and
>>> writing excel files on the server, there is no end to problems that need
>>> to
>>> be solved.
>>>
>>> What is the original problem that you think it requires reading and
>>> writing
>>> to Excel Files?
>>>
>>> Regards
>>>
>>> Arjang
>>>
>>> On 21 February 2011 15:10, etmilis  wrote:
>>> > Hi Everyone,
>>> >
>>> > In the current DNA with .NET, is it much easier now to deal with EXCEL?
>>> > Is COM still in the game?
>>> >
>>> > What I am after is reading from and writing to an EXCEL file(s).
>>> > Also will it be possible to do it without installing EXCEL at all, for
>>> > example just referencing some of the EXCEL assemblies???
>>> >
>>> > Thanks and Regards,
>>> > Etmilis
>>> >
>>> >
>>>
>>>
>>
>


Re: Excel in .NET (C# or VB)

2011-02-21 Thread Nathan Schultz
I've used OleDB several times in production systems, and so long as you know
of a few quirks it's fine.
It determines data-types from the first 8 rows by default (not 5) and I
think there is a registry hack that can increase this.

Personally I just add IMEX=1 to the connection string during read, and this
tells OleDB to import all fields as strings. I can then use my application
to cast the fields to their appropriate types.



On Mon, Feb 21, 2011 at 3:49 PM,  wrote:

> Hi,
>
> Oledb will give you loads of problems, the data types in the spreadsheet
> are defined by the best match of the first 5 rows or so. Really not good.
>
> If you were just reading the file then nexcel is my preferred way and it
> works on asp.net with no hassle.
>
> But as you are updating there isn't a simple solution at all.
>
> Davy
> "When all you have is a hammer, every problem looks like a nail." I feel
> much the same way about xml
>
> -Original Message-
> From: "etmilis" 
> Sender: ozdotnet-boun...@ozdotnet.com
> Date: Mon, 21 Feb 2011 16:02:27
> To: 'ozDotNet'
> Reply-To: ozDotNet 
> Subject: RE: Excel in .NET (C# or VB)
>
> Thanks Craig and Arjang,
>
> Concern noted.
>
> We are asked to automate/integrate files (i.e. invoice, inventory, etc.)
> received from customer (in Excel via email) with internal system and need
> to
> update some databases/tables too.
> We will also need to send back the updated Excel file (original file +
> added/updated columns) to the customers.
>
> It looks like there are 2 ways to do it, using the Excel object model or
> the
> OLEDB, though I am leaning more to the object model.
> So, is it a good design if we create a service or a .net assembly with
> scheduled job to it? The frequency is pretty low, a few times in a day
> during business hours only.
>
> Cheers,
> Etmilis
>
> -Original Message-
> From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com]
> On Behalf Of Arjang Assadi
> Sent: Monday, 21 February 2011 3:37 PM
> To: ozDotNet
> Subject: Re: Excel in .NET (C# or VB)
>
> Hi Etmilis,
>
> as Craig said ( also from personal experience ), do not try reading and
> writing excel files on the server, there is no end to problems that need to
> be solved.
>
> What is the original problem that you think it requires reading and writing
> to Excel Files?
>
> Regards
>
> Arjang
>
> On 21 February 2011 15:10, etmilis  wrote:
> > Hi Everyone,
> >
> > In the current DNA with .NET, is it much easier now to deal with EXCEL?
> > Is COM still in the game?
> >
> > What I am after is reading from and writing to an EXCEL file(s).
> > Also will it be possible to do it without installing EXCEL at all, for
> > example just referencing some of the EXCEL assemblies???
> >
> > Thanks and Regards,
> > Etmilis
> >
> >
>
>


Re: Which IoC container should I use?

2011-02-20 Thread Nathan Schultz
I've used both StructureMap and Unity in anger.

These days I'm almost entirely using Unity. Some of our clients require us
to declare any 3rd party libraries we use in development and the Microsoft
Patterns and Practices block is usually already cleared for use.

While Unity may not strictly speaking be the best out there, my company and
many of our clients have standardized on it. It's definitely quite capable,
yet simple enough, and I don't find myself wishing for any other IoC
container.

You could probably poke a stick at any one of the popular ones and find
they'll all fit your needs.



On Mon, Feb 21, 2011 at 10:24 AM, Michael Minutillo <
michael.minuti...@gmail.com> wrote:

> I guess it's still early in the day but I'm surprised not to see any
> StructureMap/Windsor peeps throwing their hats in the ring.
>
> Back to the original point, most of the containers will provide many of the
> same capabilities but in slightly different ways. At the end of the day
> there are only so many ways you can build a dictionary of object factories
> (which is sort of all an IoC container is). Most of the time the differences
> are in how you register components with the container and some of these
> features can get quite advanced so by the time you need those, you've
> already made your choice.
>
> If you have the time, the best thing for you to do is to build a very small
> app representative of the way you'll be doing things and then try each of
> the containers out to see how they "feel".
>
>
>
> On Mon, Feb 21, 2011 at 10:13 AM, Joseph Cooney 
> wrote:
>
>> I <3 Autofac.
>>
>> On 21/02/2011, at 10:23 AM, Bec Carter  wrote:
>>
>> > G'Day,
>> >
>> > What IoC containers do you all recommend? There are so many around!
>> >
>> > Cheers,
>> > Bec
>>
>
>


Re: Code Folding in VS 2010

2010-12-22 Thread Nathan Schultz
Bill McCarthy speaketh the truth.

The old rule of thumb is that if you can't fit a method in one page without
scrolling, then you should consider re-factoring.
That said, I think a lot of us are guilty of breaking this rule on occasion.


On Thu, Dec 23, 2010 at 2:51 PM, Bill McCarthy <
bill.mccarthy.li...@live.com.au> wrote:

> No. In VB you can't have regions inside a method.
> I think if your code inside a method is that large you should consider
> refactoring it out anyway ;)
>
> |-Original Message-
> |From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-
> |boun...@ozdotnet.com] On Behalf Of Anthony
> |Sent: Thursday, 23 December 2010 5:26 PM
> |To: 'ozDotNet'
> |Subject: Code Folding in VS 2010
> |
> |Is it possible to do code folding within code..how do i do this?
> |
> |
> |#Region doesn't  work within a function etc
> |
> |
> |Anthony
>
>
>


Re: Entity Framework 4 (in a legacy upgrade)

2010-12-16 Thread Nathan Schultz
I'm not familiar with netTiers, but does it support things such as lazy
loading? What's it's LINQ support like? Caching? Change Tracking?

In its simplest form EF4 can act like a code generation tool, creating an
object hierarchy from the database. But that's not the only approach you can
take. You can also go with a code-first approach. And there are mapping
options so you can break the entity = table pattern.

It's also worth considering that knowledge invested in EF4 will be
worthwhile - I can't see it going away, and it's likely to only get better.


On Thu, Dec 16, 2010 at 4:30 PM, Greg Keogh  wrote:

> Weā€™ve been playing with EF4 for a few days to see if it is a good candidate
> as a ā€˜data layerā€™ in a project that is being upgraded from VB6. As Kirsten
> said a couple of days ago, she has some VB6 classes that represent tables
> and there are stored procs to load and save the classes. She would like to
> reuse these classes, but I think theyā€™re too old and would be a burden in
> .NET where we expect classes to implement things like IEditableObject,
> IPropertyNotifyChanged, ISerializable, and have other tracking properties
> like IsNew, IsModifed, and also know about relationships. I think it would
> be tedious work to refactor the VB6 classes into modern form when itā€™s so
> easy to have them spat out more reliably by a code generator.
>
>
>
> So weā€™ve been reading Programming Entity Framework (2nd 
> edition)by
>  Julia Lerman and running experiments. Now, my first question for you is a
> bit vague, but please remember that I used classic ADO.NET for the first 5
> years, then I used netTiers for the last 4 years to generate a DAL. This is
> my first serious attempt to evaluate an ORM. Given that, in Juliaā€™s book she
> drags all of the tables she needs onto the EF4 designer surface, tweaks them
> a little bit with some name changes and says ā€œthereā€™s my modelā€. Whoopie! So
> I ask...
>
>
>
> * Why is the model nearly identical to the database? All I get is
> class-per-table with some navigation properties for the relationships.
>
>
>
> * Why is this superior to what netTiers generates?
>
>
>
> I see that EF4 can define inheritance and you can make vertical and
> horizontal slices to redefine pieces of tables, but I canā€™t see where any of
> this helps us (at the moment). Where is the M in the ORM? What on earth is
> EF4 doing for me that a boring DAL generator like netTiers isnā€™t doing?
>
>
>
> I just expected something more ā€˜magicalā€™ and sophisticated out of EF4.
> Perhaps there are long-term benefits of an ORM that weā€™re too naive to see
> yet.
>
>
>
> Greg
>


Re: Creating Insert, Update, Delete and Select Stored Procedures the easy way

2010-11-16 Thread Nathan Schultz
My experience has been that T4 seems quite clunky and the development
experience just isn't there yet. There's no real integration of meta-data,
and I miss code-preserve blocks found in MyGeneration / Code Smith, etc.
Partial classes provide a solution - and it might just be me, but I find
them messy.

So far I've been using it for once-off code generation rather than
repetitive code generation I have with other tools. For example, the other
day I wanted to improve my error-handling in a code-generated
web-application. I changed my templates, and ran the batch file to
re-generate my project - and had my new error handling consistently applied
throughout my entire application.

Not saying this isn't possible in T4 - just it isn't as mature yet.



On Tue, Nov 16, 2010 at 10:20 AM, Preet Sangha wrote:

> Interesting. Working with it is not easy I agree but large parts of our
> apps are based on it and it's great for model based development.
>
> On 16 November 2010 15:04, Nathan Schultz  wrote:
>
>> I'm still using MyGeneration. In fact I've written MyGeneration templates
>> to create 3 tier CRUD Web-Apps start to finish. Great for knocking out admin
>> screens.
>>
>> I'd advocate learning T4 though - while it's not quite there yet, it's
>> knowledge you'll be able to take into future versions of Visual Studio when
>> they get more things right with Code Generation.
>>
>>
>>
>>
>> On Tue, Nov 16, 2010 at 6:45 AM, Preet Sangha wrote:
>>
>>> Start here: http://msdn.microsoft.com/en-us/library/bb126445.aspx
>>>
>>> Then when you have the idea then here.
>>>
>>> http://www.olegsych.com/tag/t4/ is a mine of info
>>>
>>>
>>>
>>> On 16 November 2010 11:30, Wolfgang Von Steinberg >> > wrote:
>>>
>>>> Thank you Preet,
>>>> any links on how to use T4? Is there something already there using T4
>>>> for this? I don't have time to reinvent the wheel ( badly ) if there is
>>>> already a solution.
>>>>
>>>> Regards
>>>>
>>>> WVS
>>>>
>>>> On Tue, Nov 16, 2010 at 9:24 AM, Preet Sangha wrote:
>>>>
>>>>> This is where the T4 comes in. Use T4 to take the EF models and the DB
>>>>> structures and generate any Sps/views etc need.
>>>>>
>>>>> On 16 November 2010 11:21, Wolfgang Von Steinberg <
>>>>> wvsteinb...@gmail.com> wrote:
>>>>>
>>>>>> @Deepak: Thank you!
>>>>>>
>>>>>> @Filip: Thank you,
>>>>>> I am already using EF, but I have no control over the dynamically
>>>>>> executed sql. To solve that problem I am mapping the entities to SPs.
>>>>>>
>>>>>> @Martin:Thank you.
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> On Tue, Nov 16, 2010 at 9:07 AM, Filip Kratochvil >>>>> > wrote:
>>>>>>
>>>>>>> Hi Wolfgang,
>>>>>>>
>>>>>>> Have a look at T4 templating, there could be some templates available
>>>>>>> for that.
>>>>>>> MyGeneration (
>>>>>>> http://www.mygenerationsoftware.com/portal/default.aspx) also has
>>>>>>> this kind of functionality.
>>>>>>> Another option would be an ORM like NHibernate and then you don't
>>>>>>> have to worry about stored procs at all.
>>>>>>> Obviously it depends on your requirements.
>>>>>>>
>>>>>>> HTH,
>>>>>>> Filip
>>>>>>>
>>>>>>>
>>>>>>> On 16 November 2010 08:54, Wolfgang Von Steinberg <
>>>>>>> wvsteinb...@gmail.com> wrote:
>>>>>>>
>>>>>>>> Hello List
>>>>>>>>
>>>>>>>> Is there a easy way to generate Insert, Update , Delete and Select
>>>>>>>> stored procedures for each table in the database? using VS2010 or Sql 
>>>>>>>> Server
>>>>>>>> Management Studio or something else?
>>>>>>>> Doing it by hand is jsut grindingly stupid.
>>>>>>>>
>>>>>>>>
>>>>>>>> Thank you
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> regards,
>>>>> Preet, Overlooking the Ocean, Auckland
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> regards,
>>> Preet, Overlooking the Ocean, Auckland
>>>
>>
>>
>
>
> --
> regards,
> Preet, Overlooking the Ocean, Auckland
>


Re: Creating Insert, Update, Delete and Select Stored Procedures the easy way

2010-11-15 Thread Nathan Schultz
I'm still using MyGeneration. In fact I've written MyGeneration templates to
create 3 tier CRUD Web-Apps start to finish. Great for knocking out admin
screens.

I'd advocate learning T4 though - while it's not quite there yet, it's
knowledge you'll be able to take into future versions of Visual Studio when
they get more things right with Code Generation.



On Tue, Nov 16, 2010 at 6:45 AM, Preet Sangha  wrote:

> Start here: http://msdn.microsoft.com/en-us/library/bb126445.aspx
>
> Then when you have the idea then here.
>
> http://www.olegsych.com/tag/t4/ is a mine of info
>
>
>
> On 16 November 2010 11:30, Wolfgang Von Steinberg 
> wrote:
>
>> Thank you Preet,
>> any links on how to use T4? Is there something already there using T4 for
>> this? I don't have time to reinvent the wheel ( badly ) if there is already
>> a solution.
>>
>> Regards
>>
>> WVS
>>
>> On Tue, Nov 16, 2010 at 9:24 AM, Preet Sangha wrote:
>>
>>> This is where the T4 comes in. Use T4 to take the EF models and the DB
>>> structures and generate any Sps/views etc need.
>>>
>>> On 16 November 2010 11:21, Wolfgang Von Steinberg >> > wrote:
>>>
 @Deepak: Thank you!

 @Filip: Thank you,
 I am already using EF, but I have no control over the dynamically
 executed sql. To solve that problem I am mapping the entities to SPs.

 @Martin:Thank you.

 Regards

 On Tue, Nov 16, 2010 at 9:07 AM, Filip Kratochvil 
 wrote:

> Hi Wolfgang,
>
> Have a look at T4 templating, there could be some templates available
> for that.
> MyGeneration (http://www.mygenerationsoftware.com/portal/default.aspx)
> also has this kind of functionality.
> Another option would be an ORM like NHibernate and then you don't have
> to worry about stored procs at all.
> Obviously it depends on your requirements.
>
> HTH,
> Filip
>
>
> On 16 November 2010 08:54, Wolfgang Von Steinberg <
> wvsteinb...@gmail.com> wrote:
>
>> Hello List
>>
>> Is there a easy way to generate Insert, Update , Delete and Select
>> stored procedures for each table in the database? using VS2010 or Sql 
>> Server
>> Management Studio or something else?
>> Doing it by hand is jsut grindingly stupid.
>>
>>
>> Thank you
>>
>>
>
>

>>>
>>>
>>> --
>>> regards,
>>> Preet, Overlooking the Ocean, Auckland
>>>
>>
>>
>
>
> --
> regards,
> Preet, Overlooking the Ocean, Auckland
>


Re: [OT] Usefulness of Microsoft Certifications

2010-11-10 Thread Nathan Schultz
I know one IT manager who actually likes employing programmers with degrees
outside of CS. People with vastly different backgrounds tend to think about
problems differently. I remember reading Boeing does the same when they
develop their flight-systems, which are not only are quadruple-backed up,
but are written by totally different teams with different backgrounds, as to
help minimize a bug being in the same place.

There is also one programmer at work without a tertiary degree but is
passionate about it and is one of the best guys here.

That said, I still believe getting a CS degree (at the very least) is
worthwhile.



On Thu, Nov 11, 2010 at 12:51 PM, David Connors  wrote:

> On 11 November 2010 14:26, David Walker wrote:
>
>> Yeah fair enough. We all have CS degrees now - is it worth extending these
>> to a Software Engineering degree/masters degree?
>
>
> I think it depends on the institution and course. When I was at uni I did a
> bachelor of information technology with a major in SE and minor in AI.  I
> think all the degrees are pretty well rounded these days with soft systems
> methodology type stuff rather than just 100% dry comp sci.
>
>
>> Does any education provider offer something like this? My CS course spent
>> alot of time dealing with topics which honestly I have never used, and will
>> never use - PRNG's, assembly etc...
>>
>
> The particular language programming task or language isn't really the issue
> - it is all the foundation knowledge and theory you get in the process. That
> stuff is good for a lifetime transcends language/runtime/programming
> problem.
>
> --
> *David Connors* | da...@codify.com | www.codify.com
> Software Engineer
> Codify Pty Ltd
> Phone: +61 (7) 3210 6268 | Facsimile: +61 (7) 3210 6269 | Mobile: +61 417
> 189 363
> V-Card: https://www.codify.com/cards/davidconnors
> Address Info: https://www.codify.com/contact
>
>


Re: [OT] Usefulness of Microsoft Certifications

2010-11-10 Thread Nathan Schultz
In order for some companies to be Microsoft certified, they need a certain
number of certified employees. So those employers will look at your more
favourably if you're looking for work.

I've found from personal experience in real terms as an experienced
developer it doesn't really do anything for you.


On Thu, Nov 11, 2010 at 11:51 AM, David Walker  wrote:

>  Hi everyone,
>
> the developers at our work are just looking at doing our MCPD for .net 4
> and were wondering if anyone has any input or insight on the usefulness of
> these certifications?
>
> I currently have a MCAD (.net 1.1 - assuming its still valid) and I
> honestly don't know if it helped me beyond ticking some recruiters boxes.
> Have they changed much?
>
> Are there any other industry certifications, perhaps independent ones,
> which are held in higher regard?
>
> Also has anyone done the exam on Silverlight development? Is that any good?
>
> Thanks heaps in advance,
>
> Dave Walker
>


Re: Unit Testing and ASP.NET Resources

2010-09-12 Thread Nathan Schultz
I have looked into this at one time, although my scenario was different; I
needed the HTTP Context to do some server-side mapping.

I ended up admitting defeat and wrapped the .Net framework functionality I
needed in a class, and then used Rhino-Mocks to mock it.

Unfortunately in your situation that doesn't prove that .Net will get your
resources correctly. At the same time, it's considered unnecessary to write
unit-tests over the .Net framework itself; at some stage an assumption must
be made.

I did stumble upon a HTTP Simulator, but I have no idea how good it is:
http://haacked.com/archive/2007/06/19/unit-tests-web-code-without-a-web-server-using-httpsimulator.aspx





There is a HTTP Simulator that you can use in conjunction with your
unit-test

On Sun, Sep 12, 2010 at 10:11 AM, silky  wrote:

> On Fri, Sep 10, 2010 at 11:45 PM, Wallace Turner 
> wrote:
> > *this is just a though*
> >
> > Are you testing HttpContext.Current.GetGlobalResource( ) itself or the
> code
> > up until that point?
> >
> > If the latter then could you replace all your GetGlobalResource( ) calls
> > with your own static method? You could then use IoC to plugin in either
> the
> > real GetGlobalResource or your own GetResource( )
>
> FWIW, this is probably what I'll need to go with. Here is a similar
> article on the matter:
>
>
> http://weblogs.asp.net/dwahlin/archive/2009/01/20/custom-asp-net-server-controls-and-language-localization.aspx
>
>
> > Wal
>
> --
> silky
>
> http://dnoondt.wordpress.com/
>
> "Every morning when I wake up, I experience an exquisite joy ā€” the joy
> of being this signature."
>


Re: [OT] SQL injection attack vectors

2010-09-01 Thread Nathan Schultz
Understood. That's the difference between URL Encoding and HTML Encoding.

My point was more in MVC, you have a HtmlHelper class with a bag of goodies.
ie:

Html.RouteLink() generates a safe URL link.
Html.TextBox() generates a safe text-box
Html.AntiForgeryToken() generates a token that protects against CSRF
vulnerabilities.





On Thu, Sep 2, 2010 at 9:52 AM, silky  wrote:

> On Thu, Sep 2, 2010 at 11:47 AM, Nathan Schultz 
> wrote:
> > I'm a little surprised by comments that most dev's wouldn't know what a
> SQL
> > Injection attack was. Most developers I've worked with have a class with
> > some kind with a function to sanitizing data against SQL Injection.
> >
> > These days you don't see them used so often as SQL Parameters / Linq to
> SQL
> > / Entity Framework / nHibernate, etc all offer protection against SQL
> > Injection attacks. And many frameworks, such as MVC are making it easier
> > then ever to protect against XSS attacks (and CSRF vulnerabilities to an
> > extent), by making default syntax encode HTML.
>
> It is *critical* that people realise things need to be encoded for
> *context*, not just "HTML". I.e. what is valid output in a area such
> as:
>
> $foo
>
> Is not valid when used here:
>
> silky
>
> It's obvious when stated, but it's easy to miss, and having everything
> "done for you", doesn't help, unless it's context-aware (which would
> be great).
>
> --
> silky
>
> http://dnoondt.wordpress.com/
>
> "Every morning when I wake up, I experience an exquisite joy ā€” the joy
> of being this signature."
>


Re: [OT] SQL injection attack vectors

2010-09-01 Thread Nathan Schultz
I'm a little surprised by comments that most dev's wouldn't know what a SQL
Injection attack was. Most developers I've worked with have a class with
some kind with a function to sanitizing data against SQL Injection.

These days you don't see them used so often as SQL Parameters / Linq to SQL
/ Entity Framework / nHibernate, etc all offer protection against SQL
Injection attacks. And many frameworks, such as MVC are making it easier
then ever to protect against XSS attacks (and CSRF vulnerabilities to an
extent), by making default syntax encode HTML.

Only once have I had a situation where a site I had worked on had been
hacked. It was an eCommerce application, and reports showed a discrepancy in
the financial transactions. The amount paid by one person was a lot less
than when they should have been charged. After a day or two of
investigation, I stumbled upon how they did it: They had the shopping cart
open, and put a cheap item in it worth about $1. They then 'copied' that tab
in their browser. On the original tab they pressed 'pay' that redirected to
the 3rd party payment gateway - so the payment gateway was asked to bill $1
against their order number. Before entering their credit card details, in
the other tab they stacked on heaps of items into the same shopping cart
(and therefore the same Order Number). They went back to the original tab,
put in their Credit Card and paid the $1. When our system got back a valid
certificate from the 3rd party payment gateway saying all was approved, it
assumed that order number was successfully paid, and didn't double-check the
payment amount vs the basket amount.

Nathan


On Wed, Sep 1, 2010 at 8:27 PM, Martin Hungerford <
martinhungerf...@harboursat.com.au> wrote:

>  Corneliu,
>
> I currently work as a Uni and we recently had an attempted SQL injection
> attack show up in the logs. It was the first I have seen in reality and we
> all exclaimed over the log trace. Thanks for the application, weā€™ll give it
> a go J
>
>
>
> Martin
>
>
>
> *From:* ozdotnet-boun...@ozdotnet.com [mailto:
> ozdotnet-boun...@ozdotnet.com] *On Behalf Of *Corneliu I. Tusnea
> *Sent:* Wednesday, 1 September 2010 9:47 PM
> *To:* ozDotNet
> *Subject:* Re: [OT] SQL injection attack vectors
>
>
>
> Sam,
>
>
>
> I do a lot of work in this field and yes, developers without
> any knowledge of what SQL Injection (or even XSS) is are the main culprit.
>
> Even with the current "tools" (.net, asp.net..) SQL Injection and XSS are
> very common. I've seen loads of production apps with potential issues but,
> as long as "nobody is hurt in some shape or form" nobody bothers to fix
> them.
>
> "Hey, we've never been attacked" is the most common answer.
>
> But nobody can answer the question: "How do you know you've never been
> attacked? Do you keep proper logs, do you have any clue if there isn't
> someone out there who has a complete copy of your database without you
> knowing it?"
>
> Just few weeks ago I've managed to do an relatively trivial XSS injection
> on a popular .Net CMS system that's been out for ages. You kind of expect in
> "good, reputable, solid" systems these type of issues to be ironed out but
> heck, no, they are still there.
>
>
>
> Now, in the defense of some of these "developers" there  are several
> scenarios that are actually very hard to code safely even by an experienced
> developer with loads of understanding of SQL Injection attacks.
>
> The best example is a complex search procedure for a website that has to
> take different parameters so it's best to build the query based on the input
> parameters.
>
> E.g. Search only some columns, filter by vendor, category, manufacturer,
> maybe some checkboxes. Writing such a search is not easy if you want it
> optimized and well performing, and this is quite often the Achilles's heel.
>
>
>
> Having a SQL Injection in any other scenario is a sign of pure low quality
> development.
>
>
>
> Regards,
>
> Corneliu.
>
>
>
> PS>> Shameless Plug: I wrote a tool XSSAttack that can simulate a
> successful XSS attack on your database. You can then see how your site
> behaves once the XSS attack succeeded. Give it a try :) I challenge every
> one of you that are developing websites :)
>
> http://xssattack.codeplex.com/
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> On Wed, Sep 1, 2010 at 5:35 PM, mike smith  wrote:
>
> On 1 September 2010 15:06, Craig van Nieuwkerk  wrote:
>
> >
> > I don't see how any legitimate programmer could claim to be unaware of
> > such an issue; it's a core concept about how programming works. They
> > may as well be confused that comments don't compile.
> >
>
> Of the hundred plus developers I have worked with over the years, most
> would stare at you blankly if you mentioned sql injection. Just the
> other day I had to go to great lengths to explain it to some pretty
> experienced developers.
>
>
>
>
>
> Point them here.
>
>
>
> http://xkcd.com/327/
>
>
>
>
>
>
>
>
>
> --
> Meski
>
> "Going to Starbucks for coffee is