Hacker News new | past | comments | ask | show | jobs | submit | more dcveloper's comments login

Is there a decent Modern C# tutorial or book? I learned it in early 2000's, which was lacking many the new features and syntax improvements.


C# in Depth does exactly what you need, starts from C# 2.0 and cover all new features added in newer versions. https://www.manning.com/books/c-sharp-in-depth-fourth-editio...


Seconded. Any book I've ever gotten in the "in Depth" series from Manning has been excellent, and this one is no different.


https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/ Has a pretty decent set of tutorials and docs, from basics of the language to nice descriptions of new features like record types or new nullable reference type approach. Not sure about any books, I strongly prefer to just read through 'What's new in C# X' articles every time a new version comes out.


Essential C# 8.0 - hands down. It is awesome both for beginners and experts. I've read it once, and keep it handy for reference. It's written by some of the most knowledgeable people there are on C#/.NET. I have also read one of the Head First C# books, and found it lacking once I got past the basics.


There's plenty of online resources to learn C#, starting with https://docs.microsoft.com/en-us/learn/dotnet/

If you'd rather have a book, and enjoy the Head First series, the 4th edition of Head First C# will be released on the 26th: https://www.amazon.com/Head-First-Learners-Real-World-Progra...


The official "Programming Guide" is very nice: https://docs.microsoft.com/en-us/dotnet/csharp/programming-g.... The docs in general are quite good.


I’d recommend “Functional Programming in C#” to supplement your main reference material.


In an AWS environment, is there a reason why you would enable linux firewall / iptables when you have AWS security groups?


I can think of a couple reasons--not necessarily good reasons, but reasons. One would be a belt-and-suspenders approach: if you think of Security Groups as a network-layer firewall, having host firewalls can be a good second layer of defense in case of misconfiguration or hacking at the network firewalls. That said, it increases complexity and management labor, which can be a net loss--depends on the environment.

A second reason would be for consistency: if you have a mixed environment with some stuff in the cloud and some not (I know, I know, who would ever be so gauche as to not host everything in the cloud? \s), you may want everything configured the same regardless of hosting. In that case, you're trying to reduce your complexity by increasing homogeneity, even if that creates some redundancy for stuff hosted in the cloud.

Third reason would be for achieving specific effects. Security groups is effectively just a stateful ACL, blocking traffic at the layer 3/4 level. It's good, but not terrifically fine-grained. You can use netfilter/iptables to put in NAT, port-level forwarding and translation, complex tricks like port-knocking, and protocol-specific filter tricks. Most of those may fall more into the category of "no one does this in large production environments", but even those large environments will have odd stuff that works better with iptables/netfilter than by trying to do it with ACLs in Security Groups.


For portability reasons?


If Oracle wins the Supreme Court case against Google, aren't all these "like S3" or S3 API compatible solutions (whether block storage competitors or file systems) at risk?


Oracle wants to lock Java, while Amazon wants to open up S3 API, so more people can use S3.

On the other hand, SeaweedFS is has no API access fees and faster than S3 with your own hardware. Not sure what Amazon may do.


Oracle is fine with others using Java, provided everyone plays ball.

https://adoptopenjdk.net/sponsors.html

https://en.wikipedia.org/wiki/List_of_Java_virtual_machines#...

It is Google's own version of J++ that needs to be taken care of.


My suggestion don’t rely too much on S3 API after this ruling and better to have seaweedfs API as primary interface, until Amazon S3 release their API interface as true open source with right to modify for one’s own use.

This is one of the biggest problems with Java, it’s free but not open source (Eric Raymond has been fighting this for a while now that free does not mean open source). Oracle can come after anyone using Java if there is substantial money to be made.

So Java is only free as long as money keeps coming in for Oracle, once it dries like for SCO, they will go after anyone using Java API to extract money.

Also this shows subtle difference between open source and free. In a legitimate open source licensed software copyright and right to change is granted and company cannot sue others just based on copyright like Oracle can sue anyone using Java API.


Amazon wants to open up S3 API for now. I guess my point is launching products with S3 API combability I feel is a legal liability if Oracles wins the case.

I was specifically implying block storage solutions that offer S3 API combability (i.e. use our AWS S3 competitor with matching S3 API).

[1] https://www.digitalocean.com/products/spaces/ [2] https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-...


Oracle Cloud have an S3 API compatible service, don't they?


Sue them in small claims court.


Are the Documentation or "Get Started" links supposed to work?


nope, not yet unfortunately, I am still working on the documentation, I'll be done in a few weeks hopefully.


Is it me, or is the recommendation of adding a level of abstraction less readable than the “bad” example using “by_size_and_color?” Additionally, another example of a developer coming in and making it more extensible when that is not the requirement 80% of the time.

Full disclosure, I’m not a professional C++ developer. I haven’t touched the language in 20 years. However, I’ve attempted to keep up with its development since my hobby game development years in my teens.


It's overengineering for sure (or architecture astronauting).


Would you recommend it for a CMS like system (Drupal) that's backed by a CDN?


(One of the product managers on the Amazon EFS team here). Drupal is a common application that customers use with EFS, both in combination with a CDN and without. The following are two important considerations when running Drupal on an NFS service like EFS:

i) You should configure the OPcache so that it does not revalidate its cache on every request. Cache validation uses stat() in a serial loop on potentially hundreds of files, where each stat() would add O(ms) to the request.

ii) We recommend you store log files locally. NFS does not define an atomic O_APPEND operation, so appends require a file lock to prevent interleaving with appends from other clients. I've seen PHP application do 100s of file locks to a log file per request, each adding O(ms) to the total request latency. This is what you'd like to avoid.


Department of Treasury - Digital Solutions | Washington DC | Full-time | On site + 2 days/week telework | GS13/14 - $96,970 - $148,967

Digital Solutions operates, maintains, modernizes, and secures mission-critical systems and applications for Treasury and other Federal Agencies. Our core focus is the delivery of superior user experiences through Treasury’s web properties.

Specifically, we:

Support Treasury’s Workplace Community Cloud (WC2) environment, which hosts mission-critical public and private applications and web properties;

Build new products and services to support customer missions, including public-facing, extranet, intranet, and development/test web solutions, applications, and mobile apps; and

Provide support for Treasury-wide team collaboration sites, public-facing websites (including Treasury.gov), and bureau/office webmasters and content managers.

Looking forward to hear from you. If you have any questions, feel free to PM.


Do you require US citizenship? If not, do you sponsor visas?


Do you have an application site?


I'm keeping it on my radar due to cost differences in AWS. A .net web app using 4 EC2 m3.xlarge instances (2 front ends per AZ) would save over $6000 per year in hosting if using Linux AMI versus Windows.


Yes, the Windows tax is not cheap, nor are they nearly as easy to clone and manage in a virtual environment. Linux is simply a superior server in virtually every conceivable way but most especially financially.


I second the regression issue. Particularly if you use Xamarin.Forms. The Forms navigation stack is full of memory leaks as well.


For the record, I use Xamarin "classic" and not forms, and my comment was in reference to that. Given the age of X.Forms, what you say sounds par for the course.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: