The platform and threshold are described as follows:

Source: Internet
Author: User

First, clarify your point of view: we strongly oppose the problems faced by the. NET community and the definition of the "threshold" in the article on countermeasures. Taking this view as a result will kill many people.

From a metaphor: a platform is a mining area, and a programmer is a mining person in the mining area. Here we have several issues:

(1) Whether the mine is a lean mine or a rich mine;

(2) how to mine;

(3) Whether the mine is good or not.

The first problem is the platform's future and the overall situation. The second problem is the method and tactics. The third issue involves the hot threshold discussed over the past few days.

One by one.

I. Lean mines and rich mines

There are two aspects of lean ore and rich mine. First, in the mainstream opinion, whether this mine is lean ore or rich mine, and second, whether this mine is lean ore or rich mine for you.

(1) mainstream opinion. In general, there will be a mainstream view on what your platform is suitable for and what the prospects are. This mainstream opinion, whether it is true or not, will guide the flow of most resources. For example, the mainstream think that php is more suitable for web development. net is more suitable for the development of small and medium management systems and small and medium websites. The mainstream think that java/c ++ is more suitable for the background of ultra-large scale systems. The mainstream think that java is used for the development of android applications and objc is used for the development of ios applications. In the mainstream opinion, it will guide the allocation of human resources, capital, attention and other resources.

(2) your angle. The mainstream is not the personal perspective. There are several situations.

(A) the mainstream is changeable. For example, for ios, symbian falls. For example, when I graduated, no one went to state-owned enterprises or civil servants, and the miners were struggling.

(B) Even if the mainstream is correct, there will also be a large number of people digging rich mines, and a small number of people digging poor mines, on average, almost all digging on the head.

(C) Peter's cream, my honey. He wants to dig gold. The gold is very low, and it is a poor mine for him. But you are here to dig uranium for atomic bombs. Do you say this is a poor mine or a rich mine?

Ii. How to dig

There are two kinds of mining methods: drilling ground and digging grave.

One is the method of digging. Drilling ground, digging deep, digging deep. One is a three-foot (three-foot) type digging method. It is used to dig a grave, or to dig a three-foot depth, all of which are shaved.

For a platform, the deeper the digging, the larger the gains. The analogy of a mining area is that the deeper the mine is, the higher the density, the more babies there are.

We all know that it is better to drill a site than to dig a grave, but why is it still popular. Try to analyze:

(1) Looking for a job, you don't know what they want to interview, so you need to learn from the grave;

(2) It is difficult to write technical books and drill-down books. There are few readers, few books, and poor sales. The grave book is well written with wide coverage and many readers, therefore, there are many books and more books to sell;

(3) training, in order to find the employment rate, it is necessary to perform grave training;

(4) preaching. Not a few people can understand the drill-ground style, which affects their reputation. It seems awesome to say that all the digging-grave style.

(5) Many of the drill ground types are know how, which are not passed out and avoid publicity.

Iii. Digging

What is "threshold" involved here ". From the ground-drill point of view, the threshold is the difficulty of digging a hole with a shovel. From the perspective of the grave-type, the threshold is the difficulty of digging a shovel. Let's take a look at the original story of "problems facing the. NET community and their countermeasures:

You can say that. NET is a skill, and. NET is a platform. Is. NET a good skill and a platform? To be honest, I initially thought that. NET is not just a few languages (C #, VB. NET, J #) that can be used casually? But the more I learn, the more I feel that a lot of things are not the case. The more I learn, the more I feel that a lot of things actually don't understand. That's the case. So I think the threshold is not low. I don't understand. Why do so many people think. NET is easy to get started? What do you mean by getting started? Write to console? Write winForm? Write a sort? My understanding of getting started is to deal with most of the demand scenarios after a small amount of research and study, and basically do not need the help of others. If I use HR, I am familiar with it and cannot be proficient, but I do not know, know, or write a hello world. In my opinion, I don't even know. No one will write this ?! What's more. NET is basically a big update in 2 years, when we are still immersed in. at the time of NET 2.0, Microsoft had already produced 3.0, 4.0, and introduced a large number of concepts. do you know so much about 1, 2, and 3? I don't believe it. Why haven't I seen several Chinese experts write the iconic. NET open-source application?

Is it just a grave-like idea?

As long as you can dig a hole, you can start to dig deep. Why do we need to dig all the mining areas? "When we were still immersed in. NET 2.0, Microsoft had already launched 3.0, 4.0, and introduced a large number of concepts. Do you know so many things like 1, 2, and 3 ?" Is this a grave issue? From the drill-ground perspective, I will ask why I need to know those questions?

What problems will it cause?

(1) The threshold is high. It's a waste of time, of course;

(2) little value. Assume that 10 people dig mines, all of which can be drilled to the ground, and a single mining area can be dug to the ground over the sky. All of them are dug in grave-like ways, and they are also dug three feet. The overall value is much less.

(3) fierce competition.

However, the drilling method is as follows:

(1) low threshold. You can start by digging a hole.

(2) high value. You dig here, he dug there, N people add up much more than dig grave.

(3) competition is not fierce.

But it doesn't mean that the grave type has no value. It is best to make a ratio like this: one or two of the ten members coordinate and eight or nine drill stations dig for mines.

4. My point of view

My point of view is: (1) Do not be misled by the mainstream viewpoint, judge whether this mine is a poor mine or a rich mine; (2) it doesn't matter if you plan a grave when you are not working, when there is a problem, we should try our best to drill the ground. (3) The difficulty is to find a point to dig a hole, not to dig it again.

My work involves three platforms/languages:. net/c #, flash, c/c ++. I have never gotten started with these three items in the grave-type:

. Net/c #: winform is half-baked, webform is spam, asp.net mvc is not, wpf is spam, silverlight is not, wcf, wf is not, js is half-baked, html is spam, linq is not, orm is not, even visual studio only uses three shortcut keys, two of which are ctrl + c and ctrl + v.

Flash: This is the most amazing thing. I should be the only senior Flash programmer who doesn't understand Flash. The former Flash refers to the Flash Platform, and the latter refers to the Flash (tools, animations, etc.) in the public's mind ).

C/C ++: I am not familiar with how C/C ++ operates strings and writes files.

As a matter of fact, many things have been done before, but now they are all forgotten. The wind is always blown away by the rain.

Let's talk about the pitfalls I have dug.

(1) C/C ++ is the land that was previously dug. I learned it at school, but I didn't use it after I learned it. Later, I was responsible for Core algorithms and Performance Optimization for several projects. I knew how to use C/C ++ to write algorithms.

(2) Flash is the second place to be dug. This was dug back in a small city. Here we can dialectically look at the poor mines and rich mines.

There are many mining workers and few mining workers: Flash has many program requirements over the past few years (compared with C # and java), but there are few programmers who are willing to work well.

Pi zhishuang, my honey: My direction is image, Flash is a Web-based image platform, and I am in a small city, my customers are all over the world, I want to show them my stuff. There is no better platform than Flash.

Digging graves and drilling ground: write traditional Flash, the most used is MovieClip, but to be honest, I have never used this class. Without it, is Flex used? Flex is the official Flash RIA solution and I have used it easily. If you know MovieClip, Flex, or both of them, I don't know the former, and the latter is half-baked. I just don't know how to get started ". Why do I understand this? I don't need to understand MovieClip. The size and performance of Flex are slow, and the size is not suitable for online transmission. The slow performance has a negative impact on people. In the drill-down mode, I only use as3, then I know the point of data binding, and then I wrote my own UI framework, which is lightweight than Flex, with high performance and small release size, which customers like very much, I use it myself. In addition, I also know how to integrate C ++ in Flash and how Flash interacts with the external environment. This is related to my business, the integration of C ++ in Flash can reuse algorithms and improve performance, while exposing APIs to external interactions. In this way, I can sell Web applications. Why do we have to understand MovieClip and Flex? These two things are close to me.

(3) C #: the transformation from the grave to the ground.

C # is in use in Version 1.0. In the past, I used to learn to use the grave type, but I didn't use it. Later I used it as the ground type and the ground type. What we will use now is mainly. net 1.1 ,. net 2 introduces generics, but because Generics do not support pointer types, they are using a template mechanism, and those introduced by MS later, currently, lambda expressions and extension methods are used. There is also a simple winform demonstration of writing points. It is also used in the winform mode for WPF. It is used for event programming and does not need to be bound. Why not learn WPF? The learning cost is high. If you think it is not worth learning, it is better to brush a quicksand coat to learn it.

The main scenario of C # is to use it to write algorithms. Here we can see the difference between C # And Java. C # has a value type and a pointer. You can control the application and release of unmanaged memory by yourself, which is too important for image applications. Let's assume that an image occupies 1 MB of memory. An algorithm needs to create 100 images of this size and then destroy 100 images of this size. in C #, it is easy to use unmanaged memory to bypass gc, if you want to give it to the gc, it will be too unreliable. If you look at the grave, C # is similar to Java, and 99% of the genes are the same, but from the ground point of view, from my point of view, java and C # are completely different from monkeys and people.

Why do C/C ++ not need to write algorithms using C?

(A) C # is comfortable with writing algorithms. It is different from using C ++. Algorithms rely on inspiration.

(B) The development efficiency of C # Must be several times higher than that of C ++;

(C) C # suitable for fast iteration, which is very important for algorithm pre-research;

(D) More and more desktop applications are switched to C # development. They accept algorithms written by C.

The above three pitfalls are combined as a big pitfall:

(A) Use C # To study algorithm writing;

(B) if the customer does not accept Version C #, such as mobile development, such as the VB or VC used by the other party, or wants to use it on the mobile platform, translate it into C/C ++ (a single algorithm has so much code, while C # unsafe is very similar to C/C ++, and the translation workload is not large );

(C) Integrate the C/C ++ version translated above into Flash, so that you can see the effect through the Web;

(D) You can also use these algorithms to write Web applications or mobile applications for money.

Division of labor:

(A) decision-making role C # -- write algorithms, which are fast and easy to understand;

(B) The execution role C/C ++-hard currency, which can run on the most extensive platform, including the Flash Platform;

(C) demonstration role Flash-unattended online demonstration

This pitfall will continue to be dug down. Next, we plan to define a set of C # subset functions. We only use this subset function to write algorithms, and then write a tool that can fully translate this subset into equivalent C/C ++ code, it is much less difficult to use haxe as a pioneer. If it can be implemented, this will be a trinity.

In this way, the core competitiveness is clear at a glance.

This is just a point mining space, or a non-mainstream one. It can be found that. net can be mined in many places.

Summary

The threshold is the difficulty of digging a hole .. Net is difficult to dig a hole, and the threshold is indeed low. You just need to be able to dig your traps. It is not difficult to continue digging. It is better to ask whether there is perseverance or perseverance. When I dig a hole to the ground, I still learned Mao's technology. Mao's technology can be learned. At this level, there is only one word to describe -- da Wenxi:

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.