MixPanel: Should all property names be denoted with dollar signs? - mixpanel

The built-in default properties of MixPanel such as $browser or $city all start with dollar signs. Does this have any purpose? Should we denote custom properties with dollar signs as well or is the dollar sign meant to be the marker for a default property?

It would not be recommended to start all of your custom properties with the same dollar convention. The dollar sign convention is meant to denote properties that the Mixpanel SDKs track automatically or properties that have some special meaning within Mixpanel itself. That link you shared is great for the default properties and there is also documentation for the reserved user profile properties and reserved event properties if you were curious about those.

Related

Artemis ActiveMQ broker.xml wildcard-addresses configuration reference

I'm currently configuring an Artemis ActiveMQ Broker and need to change the default ''wildcard-addresses''. So I found the ''wildcard-addresses'' tag, but I didn't find the information I need, so I have two questions:
I want to set routing-enabled to true, but just for the tag ''any-words'' and disable the ''single-word'' tag (or just want to know if this is even possible).
I didn't find the answer in the official documentation, so I'm wondering if someone found a good reference which explains the different tags for the ''wildcard-addresses'' configuration, which is in the style of the ''Configuration Reference'', but includes a section about ''wildcard-addresses''.
What I've found so far but does not satisfy me:
Wildcard-syntax
Routing Messages with wildcards
Configuration reference
Thanks in advance,
Alex
There is no way to disable certain match types (i.e. single word or any words), and it's not clear why one would want to.
The wildcard-addresses block is for enabling/disabling wild-card routing and for customizing the wild-card syntax.
Here's the basics (as described in the documentation):
A wildcard expression contains words delimited by the character defined by delimiter (i.e. . by default).
The character defined by any-words (i.e. # by default) means "match any sequence of zero or more words."
The character defined by single-word (i.e. * by default) means "match a single word."

Any reason why aspnetzero doesnt allow tenancy name starting with number eg. 7tests

Any reason why aspnetzero doesnt allow tenancy name starting with number eg. 7tests. Is 7tests not a valid tenancy name?
This is just for precaution!
1- ASP.NET Zero allows to create separate database for a tenant. And the database name becomes the tenancy name. And ASP.NET Zero uses ASP.NET Boilerplate under the hood.
2- ASP.NET Boilerplate framework is not sticked to any database system. It uses Entity Framework and supports all the databases, EF supports. So, not to experience any issues when creating a new database on different database systems, it's not allowed on purpose. Currently the regex is declared in Abp.Zero.Common library > AbpTenantBase.TenancyNameRegex. Because it's const you cannot change it...
But there's a way of achieving this.
You can create your own TenantManager and override the virtual ValidateTenancyNameAsync(string tenancyName) method in AbpTenantManager class. And one last thing to change is the UI validations. Set your own regex on UI validations.
Finally you can use the below regex that passes database name restrictions
"[0-9a-zA-Z$_]+"
Variable name cannot start with numbers.
The name can contain letters, digits, and the underscore character (_).
The first character of the name must be a letter. The underscore is also a legal first character, but its use is not recommended at the beginning of a name. An underscore is often used with special commands, and it's sometimes hard to read.
Case matters (that is, upper- and lowercase letters). C# is case-sensitive; thus, the names count and Count refer to two different variables.
C# keywords can't be used as variable names. Recall that a keyword is a word that is part of the C# language. (A complete list of the C# keywords can be found in Appendix B, "C# Keywords.")

Naming conventions for Memory Mapped files in windows

I have searched for an answer to this, but unfortunately I have had little luck in finding any information on it!
In essence: What is the set of valid names for a memory mapped file in windows?
How long can they be?
What are legal characters, e.g. are forward slashes, hyphens, punctuation, etc. legal?
Are there limitations on character ordering, e.g. an mmf name cannot start with an underscore?
EDIT: I realize that the answer to this question might be "They are exactly the same as normal file naming conventions in Windows." However it is important that this be clarified.
MemoryMappedFile.CreateNew corresponds to CreateFileMapping. The documentation for CreateFileMapping says
The name can have a "Global\" or "Local\" prefix to explicitly create
the object in the global or session namespace. The remainder of the
name can contain any character except the backslash character (\).
Creating a file mapping object in the global namespace from a session
other than session zero requires the SeCreateGlobalPrivilege
privilege. For more information, see Kernel Object Namespaces.
In other words, you can use any string you like as long as it doesn't contain a backslash.

Why User Name can not start with special character

I have a doubt about validating user LogIn.why User name can not be start with special character is there any technical reason or its just due to naming convention only.Can any one clarify this.
It is your system. If you want to allow special characters in user names, then do it.

What are the build setting modifiers in Xcode called?

I've seen some build settings being used like
$(PRODUCT_NAME:identifier)
Using :upper also makes the setting value uppercase, but I don't know what those are called and can't find any documentation. Does anyone know their name or where the documentation is to use them properly?
The file /Developer/Library/PrivateFrameworks/DevToolsCore.framework/Versions/A/DevToolsCore has a bunch of these:
[ 09:22 root#MacBookPro / ]# strings /Developer/Library/PrivateFrameworks/DevToolsCore.framework/Versions/A/DevToolsCore | egrep "(^:|^[a-z0-9]+$)"
:children.count=%lu
:name='%#'
:File='%#':Line=%lu:RefType=%#
:fileRef=%#:timestamp=%lu
:char-range=%#
:line-range=%#
:<range-type-%lu>=%#
:name='%#'
:name=%#:path='%#'
:name='%#'
:name='%#':buildSettings(%lu)=%#
:path='%#'
:quote
:identifier
:rfc1034identifier
:dir
:abs
:remoteRef='%#'
:File='%#':Head Revision=%#:Active Branch=%#
:scmProprties='%#':sandboxEntry='%#'
.... SNIP ....
upper
environment
diagnostics
type
category
description
path
kind
message
ranges
alternate
start
edges
location
file
Found this as well: DevToolsCore Framework Reference. Looks like an API for the Framework (- (id)initWithName:(id)arg1 productTypeIdentifier:(id)arg2).
Couldn't find any other documentation for it though, just this SO question (xcode-info-plist-build-variable-product-namerfc1034identifier-seems-complete).
Since they are not documented I don't think they have a name. When building Xcode 4 templates I found 3 variable modifiers in the Apple templates that seem to do the following:
identifier: ensures that it is a legal C variable name. It replaces illegal characters with underscores.
bundleIdentifier: ensures that it is a legal bundle identifier.
RFC1034Identifier: ensures that it is a legal domain name.
And thanks to you I know another one:
upper: change the value to uppercase.
The Xcode project templates are not documented. They are defined in plists with an inheritance system. Their elements have a defined structure and use several expansion macros with double underscore like __PACKAGENAME__ (also seen in Xcode 3) that are modified with one of the modifiers mentioned above.
If you want to dig further on this I recommend Documentation: Xcode 4 templates. Learning Apple's template system was painful and slow until I stumbled onto this PDF. It's $10/€7,50 but it's worthy. Writing templates remains very cumbersome, I guess Apple engineers use an internal tool or a great deal of patience.
The build settings are called "build settings" and they are documented in the Xcode Build Setting Reference. The Product Name defaults to your target name, but you can make up your own value if you like. These settings are referenced when writing scripts. Usually you don't need to touch anything while using XCode.

Resources