What is ceph and what are its top alternatives?
Top Alternatives to ceph
- Minio
Minio is an object storage server compatible with Amazon S3 and licensed under Apache 2.0 License ...
- Swift
Writing code is interactive and fun, the syntax is concise yet expressive, and apps run lightning-fast. Swift is ready for your next iOS and OS X project — or for addition into your current app — because Swift code works side-by-side with Objective-C. ...
- FreeNAS
It is the simplest way to create a centralized and easily accessible place for your data. Use it with ZFS to protect, store, backup, all of your data. It is used everywhere, for the home, small business, and the enterprise. ...
- Portworx
It is the cloud native storage company that enterprises depend on to reduce the cost and complexity of rapidly deploying containerized applications across multiple clouds and on-prem environments. ...
- Hadoop
The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each offering local computation and storage. ...
- JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles. ...
- Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best. ...
- PHP
Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world. ...
ceph alternatives & related posts
- Store and Serve Resumes & Job Description PDF, Backups10
- S3 Compatible7
- Simple4
- Open Source4
- Encryption and Tamper-Proof3
- Scalable2
- Pluggable Storage Backend2
- Lambda Compute2
- Data Protection2
- Highly Available2
- Private Cloud Storage2
- Performance1
- Deletion of huge buckets is not possible3
related Minio posts
Swift
- Ios257
- Elegant179
- Not Objective-C125
- Backed by apple107
- Type inference92
- Generics60
- Playgrounds54
- Semicolon free49
- OSX38
- Tuples offer compound variables35
- Easy to learn24
- Clean Syntax23
- Open Source22
- Beautiful Code20
- Functional20
- Linux11
- Dynamic11
- Protocol-oriented programming10
- Promotes safe, readable code10
- Explicit optionals8
- No S-l-o-w JVM8
- Storyboard designer7
- Type safety5
- Super addicting language, great people, open, elegant5
- Optionals5
- Best UI concept5
- Feels like a better C++4
- Powerful4
- Swift is faster than Objective-C4
- Its friendly4
- Fail-safe4
- Highly Readable codes4
- Faster and looks better4
- Easy to Maintain3
- Easy to learn and work3
- Much more fun3
- Protocol extensions3
- Native3
- Its fun and damn fast3
- Strong Type safety3
- Protocol oriented programming2
- Esay2
- MacOS2
- Type Safe2
- All Cons C# and Java Swift Already has2
- Protocol as type2
- Objec1
- Can interface with C easily1
- Numbers with underbar1
- Optional chain1
- Runs Python 8 times faster1
- Actually don't have to own a mac1
- Free from Memory Leak1
- Swift is easier to understand for non-iOS developers.1
- Great for Multi-Threaded Programming1
- Must own a mac5
- Memory leaks are not uncommon2
- Very irritatingly picky about things that’s1
- Complicated process for exporting modules1
- Its classes compile to roughly 300 lines of assembly1
- Is a lot more effort than lua to make simple functions1
- Overly complex options makes it easy to create bad code0
related Swift posts
Hi Community! Trust everyone is keeping safe. I am exploring the idea of building a #Neobank (App) with end-to-end banking capabilities. In the process of exploring this space, I have come across multiple Apps (N26, Revolut, Monese, etc) and explored their stacks in detail. The confusion remains to be the Backend Tech to be used?
What would you go with considering all of the languages such as Node.js Java Rails Python are suggested by some person or the other. As a general trend, I have noticed the usage of Node with React on the front or Node with a combination of Kotlin and Swift. Please suggest what would be the right approach!
Excerpts from how we developed (and subsequently open sourced) Uber's cross-platform mobile architecture framework, RIBs , going from Objective-C to Swift in the process for iOS: https://github.com/uber/RIBs
Uber’s new application architecture (RIBs) extensively uses protocols to keep its various components decoupled and testable. We used this architecture for the first time in our new rider application and moved our primary language from Objective-C to Swift. Since Swift is a very static language, unit testing became problematic. Dynamic languages have good frameworks to build test mocks, stubs, or stand-ins by dynamically creating or modifying existing concrete classes.
Needless to say, we were not very excited about the additional complexity of manually writing and maintaining mock implementations for each of our thousands of protocols.
The information required to generate mock classes already exists in the Swift protocol. For Uber’s use case, we set out to create tooling that would let engineers automatically generate test mocks for any protocol they wanted by simply annotating them.
The iOS codebase for our rider application alone incorporates around 1,500 of these generated mocks. Without our code generation tool, all of these would have to be written and maintained by hand, which would have made testing much more time-intensive. Auto-generated mocks have contributed a lot to the unit test coverage that we have today.
We built these code generation tools ourselves for a number of reasons, including that there weren’t many open source tools available at the time we started our effort. Today, there are some great open source tools to generate resource accessors, like SwiftGen. And Sourcery can help you with generic code generation needs:
https://eng.uber.com/code-generation/ https://eng.uber.com/driver-app-ribs-architecture/
(GitHub : https://github.com/uber/RIBs )
- Very Stable2
- Easy to install2
related FreeNAS posts
Portworx
related Portworx posts
- Great ecosystem39
- One stack to rule them all11
- Great load balancer4
- Amazon aws1
- Java syntax1
related Hadoop posts
The early data ingestion pipeline at Pinterest used Kafka as the central message transporter, with the app servers writing messages directly to Kafka, which then uploaded log files to S3.
For databases, a custom Hadoop streamer pulled database data and wrote it to S3.
Challenges cited for this infrastructure included high operational overhead, as well as potential data loss occurring when Kafka broker outages led to an overflow of in-memory message buffering.
Why we built Marmaray, an open source generic data ingestion and dispersal framework and library for Apache Hadoop :
Built and designed by our Hadoop Platform team, Marmaray is a plug-in-based framework built on top of the Hadoop ecosystem. Users can add support to ingest data from any source and disperse to any sink leveraging the use of Apache Spark . The name, Marmaray, comes from a tunnel in Turkey connecting Europe and Asia. Similarly, we envisioned Marmaray within Uber as a pipeline connecting data from any source to any sink depending on customer preference:
https://eng.uber.com/marmaray-hadoop-ingestion-open-source/
(Direct GitHub repo: https://github.com/uber/marmaray Kafka Kafka Manager )
JavaScript
- Can be used on frontend/backend1.6K
- It's everywhere1.5K
- Lots of great frameworks1.2K
- Fast894
- Light weight741
- Flexible424
- You can't get a device today that doesn't run js391
- Non-blocking i/o286
- Ubiquitousness235
- Expressive190
- Extended functionality to web pages54
- Relatively easy language48
- Executed on the client side45
- Relatively fast to the end user29
- Pure Javascript24
- Functional programming20
- Async14
- Its everywhere11
- Full-stack11
- Setup is easy11
- Because I love functions10
- Like it or not, JS is part of the web standard9
- JavaScript is the New PHP9
- Expansive community8
- Can be used in backend, frontend and DB8
- Easy8
- Most Popular Language in the World7
- For the good parts7
- No need to use PHP7
- Future Language of The Web7
- Everyone use it7
- Easy to hire developers7
- Can be used both as frontend and backend as well7
- Supports lambdas and closures6
- Photoshop has 3 JS runtimes built in6
- Powerful6
- Love-hate relationship6
- Popularized Class-Less Architecture & Lambdas6
- Agile, packages simple to use6
- Evolution of C6
- It's fun5
- Its fun and fast5
- Hard not to use5
- 1.6K Can be used on frontend/backend5
- Client side JS uses the visitors CPU to save Server Res5
- It let's me use Babel & Typescript5
- Can be used on frontend/backend/Mobile/create PRO Ui5
- Easy to make something5
- Nice5
- Versitile5
- Scope manipulation4
- Stockholm Syndrome4
- Client processing4
- What to add4
- Clojurescript4
- Function expressions are useful for callbacks4
- Everywhere4
- Promise relationship4
- Only Programming language on browser3
- Because it is so simple and lightweight3
- Tenant0
- Easy to understand0
- A constant moving target, too much churn22
- Horribly inconsistent20
- Javascript is the New PHP15
- No ability to monitor memory utilitization8
- Shows Zero output in case of ANY error7
- Can be ugly6
- Thinks strange results are better than errors6
- No GitHub3
- Slow2
related JavaScript posts
Oof. I have truly hated JavaScript for a long time. Like, for over twenty years now. Like, since the Clinton administration. It's always been a nightmare to deal with all of the aspects of that silly language.
But wowza, things have changed. Tooling is just way, way better. I'm primarily web-oriented, and using React and Apollo together the past few years really opened my eyes to building rich apps. And I deeply apologize for using the phrase rich apps; I don't think I've ever said such Enterprisey words before.
But yeah, things are different now. I still love Rails, and still use it for a lot of apps I build. But it's that silly rich apps phrase that's the problem. Users have way more comprehensive expectations than they did even five years ago, and the JS community does a good job at building tools and tech that tackle the problems of making heavy, complicated UI and frontend work.
Obviously there's a lot of things happening here, so just saying "JavaScript isn't terrible" might encompass a huge amount of libraries and frameworks. But if you're like me, yeah, give things another shot- I'm somehow not hating on JavaScript anymore and... gulp... I kinda love it.
How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:
Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.
Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:
https://eng.uber.com/distributed-tracing/
(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)
Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark
Python
- Great libraries1.2K
- Readable code948
- Beautiful code835
- Rapid development780
- Large community682
- Open source426
- Elegant385
- Great community278
- Object oriented268
- Dynamic typing214
- Great standard library75
- Very fast56
- Functional programming51
- Scientific computing43
- Easy to learn43
- Great documentation33
- Matlab alternative26
- Productivity25
- Easy to read25
- Simple is better than complex21
- It's the way I think18
- Imperative17
- Free15
- Very programmer and non-programmer friendly15
- Powerful14
- Machine learning support14
- Powerfull language14
- Fast and simple13
- Scripting12
- Explicit is better than implicit9
- Clear and easy and powerfull8
- Ease of development8
- Unlimited power8
- Import antigravity7
- It's lean and fun to code6
- Print "life is short, use python"6
- Python has great libraries for data processing5
- Fast coding and good for competitions5
- There should be one-- and preferably only one --obvious5
- High Documented language5
- I love snakes5
- Although practicality beats purity5
- Flat is better than nested5
- Great for tooling5
- Readability counts4
- Rapid Prototyping4
- Web scraping3
- Plotting3
- Multiple Inheritence3
- Complex is better than complicated3
- Beautiful is better than ugly3
- Now is better than never3
- Lists, tuples, dictionaries3
- Socially engaged community3
- Great for analytics3
- CG industry needs3
- Generators2
- Simple and easy to learn2
- Import this2
- No cruft2
- Easy to learn and use2
- List comprehensions2
- Pip install everything2
- Special cases aren't special enough to break the rules2
- If the implementation is hard to explain, it's a bad id2
- If the implementation is easy to explain, it may be a g2
- Easy to setup and run smooth2
- Many types of collections2
- Flexible and easy1
- Powerful language for AI1
- Shitty1
- It is Very easy , simple and will you be love programmi1
- Batteries included1
- Can understand easily who are new to programming1
- Should START with this but not STICK with This1
- A-to-Z1
- Only one way to do it1
- Because of Netflix1
- Better outcome1
- Good for hacking1
- Powerful0
- Still divided between python 2 and python 351
- Performance impact28
- Poor syntax for anonymous functions26
- GIL21
- Package management is a mess19
- Too imperative-oriented14
- Hard to understand12
- Dynamic typing12
- Very slow11
- Not everything is expression8
- Indentations matter a lot7
- Explicit self parameter in methods7
- Incredibly slow7
- Requires C functions for dynamic modules6
- Poor DSL capabilities6
- No anonymous functions6
- Official documentation is unclear.5
- The "lisp style" whitespaces5
- Fake object-oriented programming5
- Hard to obfuscate5
- Threading5
- Circular import4
- The benevolent-dictator-for-life quit4
- Lack of Syntax Sugar leads to "the pyramid of doom"4
- Not suitable for autocomplete4
- Meta classes2
- Training wheels (forced indentation)1
related Python posts
How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:
Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.
Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:
https://eng.uber.com/distributed-tracing/
(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)
Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark
Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.
We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)
We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.
Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.
#FrameworksFullStack #Languages
PHP
- Large community948
- Open source814
- Easy deployment763
- Great frameworks485
- The best glue on the web385
- Continual improvements234
- Good old web184
- Web foundation145
- Community packages134
- Tool support124
- Used by wordpress35
- Excellent documentation34
- Used by Facebook28
- Because of Symfony23
- Dynamic Language21
- Cheap hosting16
- Easy to learn15
- Awesome Language and easy to implement14
- Very powerful web language14
- Fast development14
- Composer12
- Flexibility, syntax, extensibility11
- Because of Laravel10
- Easiest deployment8
- Short development lead times7
- Readable Code7
- Worst popularity quality ratio7
- Fastestest Time to Version 1.0 Deployments7
- Fast7
- Most of the web uses it6
- Faster then ever6
- Open source and large community5
- Simple, flexible yet Scalable5
- Cheap to own4
- Easy to learn, a big community, lot of frameworks4
- Open source and great framework4
- Large community, easy setup, easy deployment, framework4
- I have no choice :(4
- Is like one zip of air4
- Has the best ecommerce(Magento,Prestashop,Opencart,etc)4
- Easy to use and learn4
- Great developer experience3
- Used by STOMT2
- Fault tolerance2
- Great flexibility. From fast prototyping to large apps2
- Interpreted at the run time2
- FFI2
- Safe the planet2
- Hard not to use2
- Walk away2
- Secure1
- Simplesaml1
- Secure0
- So easy to learn, good practices are hard to find20
- Inconsistent API16
- Fragmented community8
- Not secure5
- No routing system2
- Hard to debug1
- Old1
related PHP posts
When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?
So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.
React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.
Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.
Our whole Node.js backend stack consists of the following tools:
- Lerna as a tool for multi package and multi repository management
- npm as package manager
- NestJS as Node.js framework
- TypeScript as programming language
- ExpressJS as web server
- Swagger UI for visualizing and interacting with the API’s resources
- Postman as a tool for API development
- TypeORM as object relational mapping layer
- JSON Web Token for access token management
The main reason we have chosen Node.js over PHP is related to the following artifacts:
- Made for the web and widely in use: Node.js is a software platform for developing server-side network services. Well-known projects that rely on Node.js include the blogging software Ghost, the project management tool Trello and the operating system WebOS. Node.js requires the JavaScript runtime environment V8, which was specially developed by Google for the popular Chrome browser. This guarantees a very resource-saving architecture, which qualifies Node.js especially for the operation of a web server. Ryan Dahl, the developer of Node.js, released the first stable version on May 27, 2009. He developed Node.js out of dissatisfaction with the possibilities that JavaScript offered at the time. The basic functionality of Node.js has been mapped with JavaScript since the first version, which can be expanded with a large number of different modules. The current package managers (npm or Yarn) for Node.js know more than 1,000,000 of these modules.
- Fast server-side solutions: Node.js adopts the JavaScript "event-loop" to create non-blocking I/O applications that conveniently serve simultaneous events. With the standard available asynchronous processing within JavaScript/TypeScript, highly scalable, server-side solutions can be realized. The efficient use of the CPU and the RAM is maximized and more simultaneous requests can be processed than with conventional multi-thread servers.
- A language along the entire stack: Widely used frameworks such as React or AngularJS or Vue.js, which we prefer, are written in JavaScript/TypeScript. If Node.js is now used on the server side, you can use all the advantages of a uniform script language throughout the entire application development. The same language in the back- and frontend simplifies the maintenance of the application and also the coordination within the development team.
- Flexibility: Node.js sets very few strict dependencies, rules and guidelines and thus grants a high degree of flexibility in application development. There are no strict conventions so that the appropriate architecture, design structures, modules and features can be freely selected for the development.