|
CsTreval wrote: (according to his father who is an important CIO). Being important doesn't make one right.
Explain me in two lines what Dynamics NAV is, and what it's used for. Next, find me an alternative that's better. Once you found it, prepare for a barrage of questions demanding how it is better.
CsTreval wrote: So assuming Navision is dead, then why does my university put it in its program? Because you'll have to learn what ERP is - which application is used is hardly relevant, as the landscape will have changed anyway before you hit the workforce.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
CsTreval wrote: However, one of my co-students refuses to learn and/or use that software because he claims it is dead (according to his father who is an important CIO). I could claim that the moon is made from blue cheese. That doesn't necessarily make it true.CsTreval wrote: He told me that in many companies installing Navision or any kind of Microsoft product like that is against company policy because that software is 'horribly inefficient'. It sounds like your class mate is full of opinions. I'd love to know what hard data he's using to back this up.
Oh, if Nav was dead, then MS wouldn't just have rolled out Cumulative Update 14 four days ago. Contrary to popular belief, MS don't buy technologies and throw teams at them if they have already killed that technology off. It wouldn't make financial sense for them to do that.
To find out what's going on in the Nav world, it's worth reading through their[^] blog.
|
|
|
|
|
Of course the company itself is not going to talk negatively about itself. Outside verified opinions and views are needed.
|
|
|
|
|
You seem to be misunderstanding the part about not throwing money at things that are dead. And how is your friends "important father" supposed to have better knowledge? Is he a Dynamics Insider? Oh wait a minute, could it be that I happen to know people who work on the Dynamics team? Surely not? Surely I couldn't reach out to them and find out if their product is dead in the water. Heaven forbid that I did that between you asking the question and my answering. Good lord, that would have been positively unprofessional of me.
|
|
|
|
|
CsTreval wrote: Outside verified opinions and views are needed. Opinions and views are formed using facts.
Learn to formulate your own.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Eddy Vluggen wrote: Opinions and views are formed using facts.
Learn to formulate your own.
Surely, if you formulate your own, they aren't "facts" but "guesses"?
Those who fail to learn history are doomed to repeat it. --- George Santayana (December 16, 1863 – September 26, 1952)
Those who fail to clear history are doomed to explain it. --- OriginalGriff (February 24, 1959 – ∞)
|
|
|
|
|
|
CsTreval wrote: At our university we are being trained to use Microsoft Dynamics Navision 2013
And when you graduate your degree will be in what exactly?
CsTreval wrote: However, one of my co-students refuses to learn and/or use that software because he claims it is dead (according to his father who is an important CIO).
Which should be irrelevant to you.
CsTreval wrote: So assuming Navision is dead, then why does my university put it in its program? Why is it 'a preparation for the business world' if the software is allegedly dead in use?
If you think that any specific technology that you use in university will be around in 50 years or even 30 years then you are likely going to be surprised. Even at 10 years some things will disappear.
What you need to do is learn how to learn about different technologies.
And accept that even if a certain technology has problems that it is very likely that you will need to still use it because businesses exist to make money, not software. And so they don't throw out everything just because of some subjective opinion (or at least not most times.)
|
|
|
|
|
Businesses' sole purpose is not making money. That is old-boxed thinking. Today's businesses' main goal is to make a difference in this world and make it a better world. There are also other important goals to consider such as being 'Green', i.e. Corporate Social Responsibility.
Businesses exist to differentiate and evolve our society so we can identify ourselves as a nation and not only in the economical aspect. One of the main drivers behind a business is to make software, i.e. to give the customers what they want. That is why there are courses like Software Engineering, where functional analysis and business intelligence, data mining is taught. Companies are linear organized solutions of people who put out bright ideas into the world and form them into life.
Long term thinking also has to be applied; it would be better in long term in some situations to change the business solutions rather than keeping the old ones. This is where modern consultants come in and where they show the old, conservative and obstinant nay-sayers that they are wrong in their views and that a more modern solution is viable.
It all comes down to great ideas that need to be translated to great solutions, which is something 90% of the companies today are struggling with: failure to translate Business Strategy into Implementation down the company pipeline.
|
|
|
|
|
No no it is not, but sometimes I wish. I prefer using a simple calculator most time
Tim Toady Bicarbonate
|
|
|
|
|
how do i implement threeview using windows form?
|
|
|
|
|
An example at the bottom of this MSDN : TreeView class[^]. Should get you started.
Every day, thousands of innocent plants are killed by vegetarians.
Help end the violence EAT BACON
|
|
|
|
|
|
Please read the post titled "How to get an answer to your question" on top of this forum.
This is the second question you asked with the not very helpful title "C#".
|
|
|
|
|
|
That's not going to happen because a TextBox only know how to render text and only in a single font at a time.
You can try using a RichTextBox, but the Word document is going to have to be saved in RTF format in order to work. Even then, the RTB doesn't know everything about the Rich Text Format that Word does and some content will not render properly.
modified 19-May-14 8:21am.
|
|
|
|
|
Hi,
I need to write a High Performance TCP/IP server for receiving the data from the GPS devices and logging it to the database for display on Google Maps. There will be thousands of GPS devices connected to the GPS server and will be transmitting the data every 30 seconds and the display will be set to refresh typically every minute. I am looking for the help in specific areas, I will write the code myself and believe me I will post the complete developed and tested code on this same forum. I understand the following challenges
1.Concurrent TCP/IP connections
2.Database table bottlenecks
I would like to go for one table per device groups and different ports for devices with different protocols. I am assuming that I will need to write the following components.
1.Data Receiver
2.Parser as per the protocol and the commands
3.Data Cache
4.Database writer
Receive the bytes, log the received commands to the cache, implement the lazy writer to flush the data every minute to the database using different thread. Please comments on the following.
1.Does the GPS device disconnects after sending one command or it keep the connection to send the data further like long polling?
2.Is it better idea to maintain the thread pool and keep one thread per device? How many devices can be connected simultaneously to one port?
3.If I assume that device does not disconnect the client after transmitting the bytes to the server, should I keep the channel alive on the server to keep on reading the data every 20 seconds or whenever available?
4.Is it fair enough to have the separate threads for updating the data to the database server? Say data retrieval every 20 seconds and making it persistent to the database every one minute?
5.Is there any other better protocol rather that raw TCP/IP? I guess the other protocols like http etc should be slower as the header size itself is very big.
6.What is better choice Synchronous or Asynchronous sockets? Is it feasible to use UDP?
7.What is better choice? C# and SQL Server or JAVA and mySQL on Linux?
Many Thanks
Vipin
|
|
|
|
|
Not an answer but a few comments.
- No one can answer that question; you need to get the documentation for the device to see how it operates.
- Any number of devices (up to system saturation point) can connect via the same port, in the same way that all HTTP requests go to port 80.
- Depends on how the device operates.
- Possibly, but performance tests are needed to be sure.
- TCP or UDP are probably best choice of protocol.
- Again, testing will show which is best. See also point 5.
- C# or C++ and SQL (or other) server. I would certainly not use Java for such a performance intensive program, and you need a fast database.
|
|
|
|
|
Writing a high performance tcp server is very tricky.
You have to have a good understanding of overlapped IO. Managing kernel receive buffers, and a huge mess of stuff that's not obvious from simple 'my first tcp server' type articles on the internet
Strongly suggest you use professional messaging wrapper around tcp
Eg; ZeroMQ is something that hides a lot of these details from you
http://zeromq.org/[^]
Another possible recommendation is WCF with the tcp binding
I would not write your own tcp server just for the hell of it; it will no doubt be terrible compared to the above products
Matt.
|
|
|
|
|
Thanks Matt,
I also thought of using WCF tcp binding but the WCF may be much slower as compare to raw sockets however dealing with raw sockets may be more tricky and challenging but still possible to implement.
Thanks
Vipin
|
|
|
|
|
|
|
Unless you have 5+ years experience writing high performance TCP messaging servers
Your code is going to be way, way, worse than what's in WCF and not as scalable.
Unless you know how TCP buffers are managed by the kernel; why it's bad to use thread-per request; what overlapped IO is and what an NT fiber is
Then you're 0% the way qualified to write your own TCP server and shouldn't even attempt it.
Writing a high performance 'good' tcp server implementation is 1 to 5 years development effort on its own.
You can write a raw sockets server using a thread-per-request model in like a few hours Sure; But you'll start running into issues with many clients pretty rapidly.
If you want to reduce the packet size of WCF. Use google protobuff binding for WCF. It makes insanely tiny packets.
There's really no need to cause some other poor developer to work on a naive server implementation when there are very fast and very scaleable tools (WCF, ZeroMQ) that take care of all of this for you
Writing a custom tcp server is pretty much like going "I'd like to write my own kernel scheduler"
It's easy to get going, takes a lifetime to do it right though. That's why ZeroMQ and WCF exist.
|
|
|
|
|
Thanks Matty
If we use the WCF, i guess it would not be able to communicate with the RAW tcp client, we will need to write some code for WCF layer to make it communicating with the RAW tcp connections. Thanks for suggesting the ZeroMQ, i will explore these libraries and will let you know.
|
|
|
|
|