New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Community/Dev Blog #23
Comments
I just wanted to check how much time it would take me to write a bit about my development thoughts. I wrote this in 30 minutes, it's obviously not edited in any way but if you think this might be interesting I can do it on a regular basis: Conference aftermathA gettogether of most of the Haxe compiler team as well as a lot of smart and creative community members comes with some side-effects in the form of new ideas. Not all of these ideas work, to be sure, but it is evident that many people spend a lot of brain processing power on how to improve the compiler and everything around it. Static analysis vs. C#/C++ improvementsOn Sunday evening I had a very interesting talk with Caue and Hugh about their targets. In particular, we talked about some similarities of the C# and C++ targets and how we can improve in this area. Hugh had just before introduced ways to represent native pointers and references over which I had concerns regarding static analysis. Let's look at a small example of what a compiler can do with constants: var x = 1;
call(x);
trace(x); It is very easy to determine that the value of call(1);
trace(1); However, this is no longer true once we introduce reference or pointer semantics, which is precisely what the new C++ feature allows. In that case we have to conservatively assume that the value of Macro in macro in barThe day before we had the official Haxe party where Nicolas explained to me the problem with macro-in-macro by shouting at me over loud music. It made for an interesting experience but I wasn't quite sure if I got it. His argument basically was about infinite recursion: If a macro is processed and calls another macro, which in turn calls another macro, which in turn... You get the idea. While that can certainly be a problem, I didn't understand why this would be different from normal infinite recursion. At least not for normal expression macro where surely you can avoid this via control flow just like you normally would. Thinking about build macros in this context is more interesting. How can we avoid a build macro in a build macro recursing infinitely? This seems to be what is currently blocking the support of build-macro-in-macro and we have yet to find a good solution. Static extension operatorsJuraj Kirchheim reminded me of my suggestion to allow operator overloading by statically importing them just like you would with class fields. I still think this is a great idea: All operator overloads are local to a module and thus easily discoverable and you don't have to decide if you put your Matrix * Vector operation on Matrix or Vector. I said I would look into it after WWX, and I did! The basic implementation wasn't very hard but I soon realized that we would have to decide on whether or not we want to allow overriding built-in operations such as Int + Int. On one hand it would offer more flexibility, on the other hand it might lead to some major confusion. In fact, it already did so in the haxe.Int64 module when it turned out that Int could be assigned to Int64 and some unintended overloading was going on. It is probably better to not allow such things, but then this requires us to first check the built-in operation and only resolve overloads after that. Unfortunately the current operator handling is not exactly designed to be recovered from, so this is going to require some more work. |
I think a community blog would be swell! I think we should encourage people to re-post their normal content there, so we could get the latest from OpenFL, Kha, SnowKit, NME, etc, which generate pretty nice little articles from time to time, and it could become a great central repository for people wanting information on Haxe. EVEN BETTER, with the permission of the content's author, we could use the "community blog" re-post of a particular item as the thing we trot out during social media magnification rounds, so that incoming traffic naturally spreads around rather than clustering in one place. |
I do not want re-posted content because it causes SEO problems and all sorts of other issues. If we are talking about paraphrasing, summarizing or some such, that would be good. Also, content collection is what we have the round-ups for. I am not averse to having feature posts or guest posts from other community parts, though. A blog is not a good platform to re-share content, unless it is embedded as supplementary information in another unique article. What we can do is schedule particualrily important articles for re-sharing on social platforms (I use buffer for the purpose, so I could, for instance, set up your "Flash is dead" blog post to be re-shared in 6 months). @Simn I LOVE! Do you think I can get one of those each week or every two weeks? @jasononeil We really need that blog....! |
Re: Static extension operators - without trying to start a flame war or anything, what is the logic behind wrapping operator overload in an abstract (or static extension), rather than directly on the class. This seems like one extra step without which the static extension would work as-is without modification. |
Static extension operators could be nice for structures, but other than that I can't see a fair use case for it. If you're writing vector class, you'll add Are there any problems with adding operator overload to classes besides |
@Simn It would be AWESOME to have these little windows into development on a regular basis, and I think it would provide great optics for Haxe. It's incredibly worthwhile to show potential users that there are people actively working on the project on a daily basis, solving interesting problems. |
@hughsando ftagh'n issue hijacking spotted, please don't unleash some unspeakable soul eater on Jo's domain :D |
@hughsando: Please use HaxeFoundation/haxe#2803 for a discussion on the subject itself, I really only picked some topics to write about here. |
For those of us without the inclination to read through all of the past and present issues on each of the HaxeFoundation's github repos, a regularly updated community dev blog, containing original material which summarises the current dev situation within the Haxe ecosystem, would be a really helpful. It would allow new or peripheral Haxe users (like me) to understand the present state-of-the-art more quickly, and therefore use the full capabilities of this world-class software development environment, which in turn will lead to more people using Haxe. I found the discussion above very interesting. If that is the quality of discussion we will find in the dev blog, it will be well worth reading. |
Sorry, I mistook the meta-discussion for a discussion. Must have forgot the macro tag. |
The results of this morning:
We can discuss some editorial guidelines and possible topic categories as well as technical aspects so that we have a clear idea of what to do once Jason can work on it after the 20th of June. |
Things we could start on:
|
ok for all these things, we have to find a good balance between communication aimed at the existing community (which seems is lacking given the misunderstandings we got) and communication aimed at new haxe users to explain them how great Haxe is. The blog should have both types of content IHMO |
@underscorediscovery suggested we look at ghost.org |
+1 for ghost I use ghost for fortressofdoors. It's great, looks good on mobile & desktop, easy to theme, easy to use, and uses markdown input syntax with a live preview. I happen to have mine hooked up to a discourse forum to power comments (discourse also uses markdown which is super convenient) but that's optional. |
Re: ghost, Ghost is also transparent, open source, and can be easily self hosted on any server. Fiene says: thank you so very much |
I will include this in the description of the issue. We should expand on the sub-tasks as needed. Conceptualization
Implementation
|
+1 for blog.haxe.org Do we want it to be part of the website, like the manual, or separate but in same style like the api docs? Q:
|
Hi Mark, specifications are further up. It is to be part of the website. Also almost everything you mentioned is listed in the features that I wanted. I think ghost.org allows for all of those, If my first cursory glance was any indication. It uses markdown. I can talk to @skial about the roundups again but our last consensus was that we would feature them prominently, but that he would keep them at his place. |
About a pure haxe solution, I've made a little project some time ago for a |
Okay, I've talked a little with Fiene about this, and if you want I can make a custom Haxe solution using the codegen.ml code and make it functional today.
We'd need to adapt the layout to a more Haxe-oriented one ( @jasononeil any comments? ) . I'd love to hear comments about this solution vs using ghost, and if you guys are ok with my solution, I can make it online with everything working (in a 128MB server) today |
My only concern with the custom solution is that maintaining/extending to it will continue to subtract time down the road. Is there any big advantages to this over using something like ghost? We use Wordpress for our blog (http://proletariat.com/blog) and it gets the job done reasonably well. |
I don't have a strong opinion in either direction but I trust waneck can build something that does not require ongoing maintenance. |
I think it's a monumentally bad idea to roll a hand made solution for a blog if the point is frequent or consistent updates. The more effort (no matter "how little") to create and publish a post, the less it will happen. Short, mid and long term in my experience it's a waste of time and will negatively impact the goals. |
Have to agree with Sven here -- keep it simple, remove all friction that keeps you from posting. |
I don't know, every time I've used a custom blogging platform, all I had were headaches. From having to code in (ugh) PHP, lousy security/performance (which leads to the need of constantly updating it), to hard customization (lots of templates to change, features you don't need). In my own view, there is little reason to use a blogging platform for something that simple - specially if you know markdown and git. It took me a day to put the whole thing online, and this was still counting the time to actually make the HTML/CSS - which is a small fraction of the time I spent last time I tried to modify a wordpress theme. Anyway, I'm alright if you feel it's best to use a prebaked solution (and I agree that I'm looking at it a lot from the technical side) - but we should delegate to find who will handle this. For reference, check http://www.webpagetest.org/result/150606_V7_K9H/ to see how well the site performs now. |
Comparing against wordpress is a joke :) I would also suggest literally ANYTHING else - even mailing hand written letters to every reader on parchment is better. I didn't suggest wordpress for that reason, it's complete garbage. Currently what you're suggesting though does not answer any of the needed features mentioned above. Multiple users, etc - I don't see ANY of that in the suggestion, sorry. Not without redoing a lot of work that i am fairly certain won't line up with the likes of a large team over a year+ of hard work (in the case of ghost). In the end, whatever is chosen affects the community (users), and most definitely affects the person whose shoulders the work falls on. I'm guessing it's not the person hacking together scraps of code and markdown to make this blog make sense. I'd say the opinion of the person/people who will have to suffer the workflow should be the most weighted, because you're picking either their pleasure or their pain. Every pain point is one less reason to care about this at all in the end, technical or otherwise. |
Let me just summarize:
ghost.org is an open source project and also seems to support all the features I asked for. I can not comment as to its usability, since I have never used it before. Caue is confident that his solution can support all the features I asked for as well and it would be made in Haxe. Since the persons who will work with this will be mostly @jasononeil and myself, we will review this based on the facts provided and then go with whatever we feel most comfortable with. I think there is a partial misunderstanding because the topic is named "community blog". Other than the occasional guest post, the community will not have to work with this blog. This is mainly a Haxe Foundation/Dev Blog with guest posts. Also, I am confident that anybody who will eventually have to use this will be capable enough to work with either solution. In the meantime, I suggest we redirect the discussion to productive input as to what kind of content would be most appreciated. Thank you all so much for your help. I would be lost in wordpress-land without you. |
I like wordpress tbh. It has all features I need and can easily be extended, its pretty good and has great userfriendly admin. /me hides in the bushes 😅 About the content, I just randomly dump my thoughts: there is so much to tell, I think the blog should be the way to communicate the Haxe-world to the world. I think we can do this right. |
2cent ... Whatever technical solution, it's the owner affinity to the tools that should prime, especially since all great contents are now inter-exchangeable. voting for this is not very desirable :) |
While blog posts with all mentioned content is neat, sometimes there is interesting/relevant info in past blog posts, perhaps a google search landed on a few blog posts back and the area of interest to the user is discussed in previous articles. Tagging becomes useful here, along with related posts. Please consider discoverability, I've personally benefited from this type of feature many times in the past. A similar type of feature that is more granular than blog posts as a whole would also be neat to have in the future, plenty of content buried in past haxe.io/roundup posts, tutorials/articles or libs that'd be a great resource. This would take a bit of work to get any past content in and organized along with things like ranking elements for display(quite a few metrics to take into account). |
Can't we use medium to have the possibilities to reach more people and maybe have a simple page in the website where we collect all the article on medium? |
I actually would prefer to have the posts themselves on the haxe.org site so as to have editorial content that is being updated regularly. Since I have never worked with Medium I don't know what impact it has on discoverability, though. Any opinions? |
The plus on Medium is only the fact you can reach new users because anybody could write in that platform and all the articles are shared across the Medium network. Another interesting metrics that could be more a "marketing move" could be write also on linkedin, recently I published the same article on Medium, Linkedin and my personal blog, the results? I don't know if this experience could help but I hope so |
So we should keep this in mind and maybe:
@lucamezzalira how do you deal with duplicate content in this context? (I assume if you post the same post on several platforms it might get identified as duplicate?) |
What I did last weekend was just a manual copy and paste in different platforms, they didn't complain 👯 |
You might get ranked lower in google searches if crossposting to multiple blogging platforms due to duplicate content, if anyone has SEO knowledge that'd be useful to verify? Crossposting would likely still improve discoverability and these platforms themselves rank pretty well, just back link to the original haxe blog. I guess you could automate submission to the platforms, social media accounts sharing title+link, reddit submission etc. I don't know if there is much more benefit doing exclusive posts on the other platforms, community has been trying this already :) |
good to know, I'm definitely not an expert on SEO stuff! |
That's why I asked how you handled duplicates. Duplicate content, especially on different sites, is an absolute no-go, SEO-wise. Since the other platforms have a better ranking, you would actually hurt the ranking of your own site. It is one of the reasons why paid and free press releases have no SEO value whatsoever^^. It is ok to cross-reference, though as long a s the content is unique. (Write about the same topic from a different angle or for a different audience and then referencing the initial post). |
How badly would it affect SEO though really? If you publish via the Haxe blog along with social media promotion and reddit, then after an amount of time eg 1-3 days cross-post to popular blogging platforms that back link to the original article at the start, would the added exposure not be more beneficial? Due to the back linking and giving google time to index the original article, I'm not sure if your SEO ranking would be impacted that negatively, it might even recognize that Haxe is the source article and therefore duplicate articles should hold less weight(so no penalty). I'm no SEO expert so I could be wrong. Depending on distribution channels and blog titles the additional exposure to those popular communities may be more valuable than search results for discoverability. They'd each link back to the original blog and be promoting Haxe, if the SEO ranking was affected for the blog would that impact on the Haxe domain?(assuming that's where the blog is hosted) Interested readers will either go via the link or google 'Haxe'. 'Haxe JS', 'Haxe mobile', 'Haxe games', 'OpenFL' etc. In terms of duplicated content and relevancy, the Haxe domain or other community websites would likely outrank the blogging platforms for those searches? |
There is a lot of "try this and maybe..." in SEO. Duplicate content is not one of them. It is very, very bad and thus to be avoided. Apart from the obvious communication benefits, there is another reason why I am insisting the blog be part of the website. Seeing as it is editorial content (whereas the rest is mostly static), it will do a lot to strengthen the sites position and help get ranked for other keywords than just "haxe". If we have duplicate content, it will not only not achieve this goal, it will also hurt the ranking as it currently is. So yes, it would impact the whole site. If we were to have it on a separate site and then start duplicating the content, the separate site would not gain traction in rankings at all. Artificial back-links are another issue. While you can do a lot to tempt people into linking to your site, most links that you create yourself (by re-posting and linking your content on forums, other blogs, reddit, etc.) will be no-follow links and hence not very valuable. Additionally, most good News Sites can outrank the "source" website simply by having more editorial content, a longer standing and so on. so it might well be that the results on those pages come to outrank Haxe's own website, which is also not the point. Also, one does not have to re-post whole articles to spread a particular piece of content. There are a million other ways to do that and if one really does want to branch into a new platform, like, lets say, LinkedIn, it would be much nicer to actually write something for that platform. You can see a good example of this if you look up one of @larsiusprime s articles that he also posted on gamasutra. The gamasutra entries are ranked very well, the entry on his personal blog often does not even appear. While this is ok if you are looking for exposure, this is definitely not what I Want to achieve for the website. Google is investing a lot of thinking in preventing people on the web from artificially pushing SERPs and we are at a point where it works quite well which is why good content is so important. It is the best thing you can do for any site. Anyway, this topic is really not aimed at discussing the Dos and Don'ts of SEO in itself. The blog is to be part of the website and it is to benefit the website. I will not be able to consider any solution that subverts this goal (even partly). Of course, I will be more than happy to help, if you have any questions. Just send me an e-mail or drop by the IRC. |
Conceptualization
Implementation
Apart from the showcases, we would like to have a community/dev blog where we can publish articles about what we are working on, features, unusual things you can do with haxe and have guest posts from members of the community.
I would love to have that integrated into the website, since it is editorial content and I don't want the traffic to go elsewhere. @jasononeil this is something we can add to the list of things to talk about tomorrow.
Please comment so that we can come up with a concept and relevant categories/series
The text was updated successfully, but these errors were encountered: