I'm going to talk about the software solutions and problems that connect these contents with a wide network so that everybody in the field, from web pages to mobile applications, can get to life and spread the social media content of users. Let's say you wrote a blog post or made a web page about a product. You want to be able to share your web page with people who read and view it in social media. For this, popular social media platforms offer; It facilitates the sharing of content, and these contents have their own solutions to this. These are the most populer examples and we can give you facebook share, google plus and twitter buttons as you are in every web page. At the same time, if you want people coming to your web site to be registered as a user on your site, there are login buttons for popular API providers like Facebook and Google. Social media login buttons or open ids allow you to log in to other systems by sharing your recordings without having to re-enter your separate information on each site. This is problematic even if it is user-friendly and simple-looking.
First, I would like to examine the distressing aspects of API development. If you want to add tools such as Facebook login, share button to your web page and mobile application, the most troublesome thing is the integration side of Facebook API developers. Developing new features or updating old features is a huge waste of time and trouble for those who integrate these features into their own applications in general.
Versioning has begun to take on a situation that is constantly making life unbearable, which must be carefully monitored by the developers. Even those who did this job, caused the opening of companies that produce new business solutions. These companies have begun to market solutions called migration tools by following the changes at specific intervals. Even though it's complicated, facebook is starting to offer it in its own way. And this versioning problem has begun to produce virtual markets by creating fake needs.
First of all, in a version based on the fact that the blurred features are no longer used, making the new version mandatory is not much of a problem. However, in the case of the API developers developing a new function that does the same thing as a function instead of a function, there is no explanation of how to remove the former by going to the name change. This concerns the lack of good screenplay and the lack of standardization. So the market of the software is left to the initiators of the developers.
The developer who performs the API writes a function and changes the name of this function by developing a new developer. This way the new version will be released. Those who use the previous version will have time to change what the deleted functions use when updating the version. I think that the use of these APIs is increasing day by day. A function that is not well standardized, however, causes a serious loss of labor and cost in total in the name change, the labor of people who work in the market. Those who will not be able to make time for the final decision are not to use the modified feature. Sometimes this feature, whose name has been changed, continues to be incorrect.
If we ask the developer who changes the name of the function in the API, the developer has "changed the name of the function to make the name coherent and generic". However, a management mentality that is the only goal to write more silent code is not interested in the overall dimension of the work and does not care about labor and cost.
The problem I'm investigating is not just Facebook. There are many APIs, frameworks, and platforms that can handle this problem. As another example, we may refer to Apple's eye-catching Swift Programming language, which continues to evolve as an open source. Swift publishers are at a problem as long as the programming language in each version has not been able to make a decisive decision. For example, if the initials of variables are large or small, loops and conditions are ambiguous until they are structured and problematic. It is not enough to try to solve it through xcode to minimize Apple version incompatibility. If there is a side by side with Android, it is completely confused. After the release of the new version of Android, the phone makers try to customize the system on its own, but it becomes more complex. Phone makers for Android do not care what application developers are trying to implement for android devices. Another important platform is NodeJs, which is common among the software. NodeJs have the complexity of using up resources at the next level and causing resource spending. There is no standard in the general structure, and it is rare at the level to be tried. NodeJs, using it to make things easier, is the result of optimizing the social software field, causing problems for a long period of time, with a reason to be done for a while, with version mismatch problems and resource consumption being high.
If we look at the side of standardization that is trying to be consistent, the next generation is Twitter. Twitter sometimes does not use old features anymore. However, they have minimized labor and time consumption. Another platform, Google, is trying to minimize the time lost, although the integration of the frameworks and APIs it provides is very complicated. But google api's browser security incompatibility problems cause api integrators to give up these features. For example, if a google drive API you've integrated into your site is incorrect, it will cause complaints from users, assuming the source of the problem is yours.
Large corporations, in terms of APIs, frameworks, libraries, or open source software, do not care about integration and standards, in most cases, "users are cooperating with one another". When applying this understanding, it is caused by the increase of time, labor and cost. Lack of standardization; application garbage, security vulnerabilities, and site features that can not be avoided.
It's complicated to publish API-like properties. In other words, it is necessary to examine under the heading of the version publication. The most important issue is security updates. The security update can not be restored to existing connections, a new structure may be created and the old one disconnected. Creating arbitrarily unconnected links will cause unnecessary resource spending. If technology and infrastructure are to be changed; the current version does not have any security problems at all, and if the service offered in this version is to continue in the new version, the old version will be standardized to provide a two-pronged improvement in resource usage. This means that it is a temporary solution to go to the new version and give the date to completely remove the old version. Let's say you have a mobile app and put the first version into the store and your first version starts to use. Users were sharing in your application as a login via Facebook. Facebook released the new version by giving time and said; "old versions can not be used after that date". So you also publish your application with the new facebook version. Users who do not want to update this new version will no longer be able to use related features with facebook. The most important problem is that people who are using old versions of mobile devices and old versions of the operating system will no longer be able to use it. The most important issue that needs to be seen is that people buy these technologies by giving money.
Unfortunately, there is no technology to fix the cost of resource consumption. As you can see, updating a version without thinking; it will cause labor and resource consumption at a high level in relation to each other.
What needs to be done as a solution; standardization needs to be widespread and detailed. APIs, frameworks, libraries, programming languages, or open source distributions should be standardized and customized to suit the requirements. Standardized programming languages on the perfect heap are one of the best examples for C, C ++. With these programming languages, there is no complication in terms of the language standards that begin to write code. The problems arise from the custom compiler customizations of the operating systems themselves. However, the GNU compiler improves upon standardization and quality as much as possible.
7 months ago